diff --git a/parse-logs.py b/parse-logs.py new file mode 100644 index 0000000000000000000000000000000000000000..c20975edd35c80ad025c937b6efbe71cca92016b --- /dev/null +++ b/parse-logs.py @@ -0,0 +1,29 @@ +import logging +import json +from datetime import datetime + +def main(): + logging.basicConfig(filename='/home/eccs/logs/eccs-log-parsing.log', level=logging.INFO) + logging.info('Started') + + file_name = "/home/eccs/logs/eccs-uwsgi.log" + file = open(file_name, "r") + data = [] + order = ["ip", "date", "http-method", "url"] + + for line in file.readlines(): + if ("|" not in line): continue + + details = line.split("|") + details = [x.strip() for x in details] + details[1] = datetime.strptime(details[1], '[%a %b %d %H:%M:%S %Y]').strftime('%Y-%m-%d') + structure = {key:value for key, value in zip(order, details)} + data.append(structure) + + for entry in data: + print(json.dumps(entry, indent = 4)) + + logging.info('Finished') + +if __name__ == '__main__': + main()