logger = logging.getLogger(__name__)
def parse_log():
- output = ''
logger.debug("Starting cron section")
- output += opentag('div', 1, 'cron', 'section')
+ section = Section("cron")
matches = re.findall('.*CMD\s*\(\s*(?!.*cd)(.*)\)', readlog(config.prefs['logs']['cron']))
num = sum(1 for line in matches)
commands = []
# commands.append([str(match)for match in matches])
#logger.debug("found cron command " + str(commands))
logger.info("Found " + str(num) + " cron jobs")
- subtitle = str(num) + " cron jobs run"
- output += writetitle("cron")
- output += writedata(subtitle)
+ jobs_data = Data(str(num) + " cron jobs run")
+ section.append_data(jobs_data)
+
if (len(matches) > 0):
- commands = addtag(commands, 'code')
- commands = orderbyfreq(commands)
- commands = truncl(commands, config.prefs['maxcmd'])
- output += writedata("top cron commands", [c for c in commands])
- output += closetag('div', 1)
+ logger.debug("Analysing cron commands")
+ cmd_data = Data("Top cron commands")
+ cmd_data.items = ("`{0}`".format(x) for x in commands)
+ cmd_data.orderbyfreq()
+ cmd_data.truncl(config.prefs['maxcmd'])
+ section.append_data(cmd_data)
+
logger.info("Finished cron section")
- return output
+ return section