Adds console logging to swift-drive-audit

This patch adds console logging ability to swift-drive-audit.
There are cases where logging to console is necessary when drive-audit
is done. This can be consumed for flagging errors in monitoring tools
such as icinga.

DocImpact
Change-Id: Ia1e1effcbd89bd2cf6d5b8c64019f1647c736a3a
This commit is contained in:
Keshava Bharadwaj 2014-12-11 13:45:38 +05:30
parent cc2f0f4ed6
commit 1ffe6b3953
2 changed files with 7 additions and 1 deletions

View File

@ -150,6 +150,7 @@ if __name__ == '__main__':
recon_cache_path = conf.get('recon_cache_path', "/var/cache/swift") recon_cache_path = conf.get('recon_cache_path', "/var/cache/swift")
log_file_pattern = conf.get('log_file_pattern', log_file_pattern = conf.get('log_file_pattern',
'/var/log/kern.*[!.][!g][!z]') '/var/log/kern.*[!.][!g][!z]')
log_to_console = config_true_value(conf.get('log_to_console', False))
error_re = [] error_re = []
for conf_key in conf: for conf_key in conf:
if conf_key.startswith('regex_pattern_'): if conf_key.startswith('regex_pattern_'):
@ -166,7 +167,8 @@ if __name__ == '__main__':
re.compile(r'\b(sd[a-z]{1,2}\d?)\b.*\berror\b'), re.compile(r'\b(sd[a-z]{1,2}\d?)\b.*\berror\b'),
] ]
conf['log_name'] = conf.get('log_name', 'drive-audit') conf['log_name'] = conf.get('log_name', 'drive-audit')
logger = get_logger(conf, log_route='drive-audit') logger = get_logger(conf, log_to_console=log_to_console,
log_route='drive-audit')
devices = get_devices(device_dir, logger) devices = get_devices(device_dir, logger)
logger.debug("Devices found: %s" % str(devices)) logger.debug("Devices found: %s" % str(devices))
if not devices: if not devices:

View File

@ -11,6 +11,10 @@
# recon_cache_path = /var/cache/swift # recon_cache_path = /var/cache/swift
# unmount_failed_device = True # unmount_failed_device = True
# #
# By default, drive-audit logs only to syslog. Setting this option True
# makes drive-audit log to console in addition to syslog.
# log_to_console = False
#
# Location of the log file with globbing # Location of the log file with globbing
# pattern to check against device errors. # pattern to check against device errors.
# log_file_pattern = /var/log/kern.*[!.][!g][!z] # log_file_pattern = /var/log/kern.*[!.][!g][!z]