In <4f952e77-258d-47ae-9d76-a86daa8ac...@googlegroups.com> spe...@gmail.com writes:
> I need to search a log file for a specific string (Successfully Sent) and > report the number of instances in the last hour (from when executed) and > total for the day so far (midnight till the time executed). Can anyone > provide any examples of such a program or get me started? from datetime import datetime, timedelta from time import mktime, strptime now = datetime.now() midnight = now.replace(hour=0, minute=0, second=0, microsecond=0) one_hour_ago = now - timedelta(hours=1) daily_instances = 0 hourly_instances = 0 with open('myfile.log') as logfile: for line in logfile: if 'Successfully Sent' in line: time_string = line[0:19] struct = strptime(time_string, "%Y-%m-%dT%H:%M:%S") log_time = datetime.fromtimestamp(mktime(struct)) if log_time > midnight: daily_instances += 1 if log_time > one_hour_ago: hourly_instances += 1 print "Instances in the last hour: ", hourly_instances print "Instances since midnight: ", daily_instances This code assumes that log lines begin with a timestamp similar to "2013-01-23T09:27:01". If the timestamp is in a different format, or occurs elsewhere in the line, you'll have to adjust for that. -- John Gordon A is for Amy, who fell down the stairs gor...@panix.com B is for Basil, assaulted by bears -- Edward Gorey, "The Gashlycrumb Tinies" -- http://mail.python.org/mailman/listinfo/python-list