Skip to content

Commit

Permalink
[redis] Added plugin for Redis
Browse files Browse the repository at this point in the history
Patch adds plugin to collect details related to Redis -
in-memory data structure store.

Closes #760.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
  • Loading branch information
Akasurde authored and bmr-cymru committed May 23, 2016
1 parent 5811456 commit 7d1b9af
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 0 deletions.
1 change: 1 addition & 0 deletions AUTHORS
@@ -1,5 +1,6 @@
Individuals
-----------
Abhijeet Kasurde <akasurde@redhat.com>
Adam Stokes <adam.stokes@ubuntu.com>
Ben Turner <bturner@redhat.com>
Bharani C.V. <bharanve@linux.vnet.ibm.com>
Expand Down
53 changes: 53 additions & 0 deletions sos/plugins/redis.py
@@ -0,0 +1,53 @@
# Copyright (C) 2015 Red Hat, Inc., Abhijeet Kasurde <akasurde@redhat.com>

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

from sos.plugins import Plugin, RedHatPlugin


class Redis(Plugin, RedHatPlugin):
"""Redis, in-memory data structure store
"""

plugin_name = 'redis'
profiles = ('services',)

packages = ('redis',)
files = ('/etc/redis.conf', '/var/log/redis')

def setup(self):
self.add_copy_spec("/etc/redis.conf")
self.limit = self.get_option("log_size")
self.add_cmd_output("redis-cli info")
if self.get_option("all_logs"):
self.add_copy_spec_limit("/var/log/redis/redis.log*",
sizelimit=self.limit)
else:
self.add_copy_spec_limit("/var/log/redis/redis.log",
sizelimit=self.limit)

def postproc(self):
self.do_file_sub(
"/etc/redis.conf",
r"(masterauth\s).*",
r"\1********"
)
self.do_file_sub(
"/etc/redis.conf",
r"(requirepass\s).*",
r"\1********"
)

# vim: set et ts=4 sw=4 :

0 comments on commit 7d1b9af

Please sign in to comment.