summaryrefslogtreecommitdiffstats
path: root/scripts/show_changed
diff options
context:
space:
mode:
authorSeth Vidal <skvidal@fedoraproject.org>2013-07-04 04:10:25 +0000
committerSeth Vidal <skvidal@fedoraproject.org>2013-07-04 04:10:25 +0000
commitc779358a994f03b7e43ff8dd89ba2bba4fcccb4b (patch)
tree87108c5154c4ce70b484a72ec7cf5b1b27d2d176 /scripts/show_changed
parentd91f35cfba4a59e327a64b3e38d3e630addbff3b (diff)
rename show_changed to logview since that's what it is
Diffstat (limited to 'scripts/show_changed')
-rwxr-xr-xscripts/show_changed79
1 files changed, 0 insertions, 79 deletions
diff --git a/scripts/show_changed b/scripts/show_changed
deleted file mode 100755
index fb1e6b45f..000000000
--- a/scripts/show_changed
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/usr/bin/python -tt
-import sys
-import json
-import time
-from optparse import OptionParser
-import subprocess
-import os
-import glob
-
-logpath='/var/log/ansible'
-search_terms=['CHANGED','FAILED']
-
-def date_cheat(datestr):
- dc = subprocess.Popen(['date', '-d', datestr, '+%Y/%m/%d'], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[0]
- dc = dc.strip()
- return dc
-
-
-def parse_args(args):
- usage = """
- show_changed [options] [-d datestr] [-p playbook]
- """
- parser = OptionParser(usage=usage)
- parser.add_option("-d", default='today', dest='datestr', help="time string of when you want logs")
- parser.add_option("-p", default='*', dest='playbook', help="the playbook you want to look for")
- parser.add_option("-v", default=False, dest='verbose', action='store_true', help='Verbose')
- parser.add_option("-s", default=[], dest='search_terms', action='append', help="status to search for")
- parser.add_option("-l", default=False, dest="list_pb", action='store_true', help="list playbooks for a specific date")
- (opts, args) = parser.parse_args(args)
-
- opts.datestr = date_cheat(opts.datestr)
- if not opts.search_terms:
- opts.search_terms = search_terms
- return opts, args
-
-def search_logs(opts, logfiles):
- msg = ''
- for fn in logfiles:
- hostname=os.path.basename(fn).replace('.log', '')
- timestamp = os.path.basename(os.path.dirname(fn))
- for line in open(fn):
- things = line.split('\t')
- if things[2] in opts.search_terms:
- slurp = json.loads(things[4])
- msg += '%s\t%s\t%s\t%s\t%s\t%s' % (timestamp, hostname, things[0], things[1], things[2], things[3])
- if not opts.verbose:
- if type(slurp) == dict:
- for term in ['task_userid', 'cmd']:
- if term in slurp:
- msg += '\t%s:%s' % (term, slurp.get(term, None))
- msg += '\n'
- else:
- msg += '\n'
- msg += json.dumps(slurp, indent=4)
- msg += '\n'
-
- return msg
-
-
-def main(args):
- opts,args = parse_args(args)
- for pb in glob.glob(logpath + '/' + opts.playbook):
- pb_name = os.path.basename(pb)
- for pb_logdir in glob.glob(pb + '/' + opts.datestr):
- if opts.list_pb:
- print pb_name
- continue
-
- logfiles = glob.glob(pb_logdir + '/*/*.log')
- msg = search_logs(opts, logfiles)
- if msg:
- print pb_name
- print msg
-
-
-
-if __name__ == "__main__":
- sys.exit(main(sys.argv[1:]))
-