#!/usr/bin/python

import pymongo
import datetime
import time
import sys

from pymongo import MongoClient
from datetime import timedelta

if len(sys.argv) < 2:
   print('Usage:\n\terrorstatistics instrument')
   sys.exit()

inst = sys.argv[1]

mongodb = MongoClient('mongodb://logwriter:sinqsics@mpc1965:27017/?authSource=admin')

totime = datetime.datetime.today()
totime = datetime.datetime(totime.year,totime.month,totime.day)
fromtime = totime - timedelta(1)

messagedict = {}
db = mongodb[inst]
for entry in db.log.find({"timestamp" : {"$gt": time.mktime(fromtime.timetuple()), 
			 "$lt" : time.mktime(totime.timetuple())}, "severity": {"$lte": 2} }):
			 mes = entry['message']
			 if messagedict.has_key(mes):
			    messagedict[mes] = messagedict[mes] + 1
			 else:
			    messagedict[mes] = 1


for mes in sorted(messagedict, key=messagedict.get):
    print('%8d %s' %(messagedict[mes], mes ))			
