Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #37503
| From | John Gordon <gordon@panix.com> |
|---|---|
| Newsgroups | comp.lang.python |
| Subject | Re: Search log for string and display hourly/daily report |
| Date | 2013-01-23 21:25 +0000 |
| Organization | PANIX Public Access Internet and UNIX, NYC |
| Message-ID | <kdpkh7$pfu$1@reader1.panix.com> (permalink) |
| References | <4f952e77-258d-47ae-9d76-a86daa8acaa2@googlegroups.com> |
In <4f952e77-258d-47ae-9d76-a86daa8acaa2@googlegroups.com> spek06@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
gordon@panix.com B is for Basil, assaulted by bears
-- Edward Gorey, "The Gashlycrumb Tinies"
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Search log for string and display hourly/daily report spek06@gmail.com - 2013-01-23 11:05 -0800
Re: Search log for string and display hourly/daily report Tim Chase <python.list@tim.thechases.com> - 2013-01-23 14:08 -0600
Re: Search log for string and display hourly/daily report John Gordon <gordon@panix.com> - 2013-01-23 21:25 +0000
Re: Search log for string and display hourly/daily report spek06@gmail.com - 2013-01-23 16:57 -0800
Re: Search log for string and display hourly/daily report Michael Torrie <torriem@gmail.com> - 2013-01-23 15:12 -0700
csiph-web