[java-idp-log-analysis] 06/06: Add support for reading compressed log files
Ian Young
ian at iay.org.uk
Mon Jan 23 11:33:06 EST 2017
This is an automated email from the git hooks/post-receive script.
iay pushed a commit to branch master
in repository java-idp-log-analysis.
View the commit online:
http://git.shibboleth.net/view/?p=java-idp-log-analysis.git;a=commit;h=20a0fa56439bc758f697938891b24bbc3152eaa3
commit 20a0fa56439bc758f697938891b24bbc3152eaa3
Author: Chad La Joie <clajoie at gmail.com>
AuthorDate: Thu Jul 21 11:05:25 2011 +0000
Add support for reading compressed log files
---
loganalysis.py | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/loganalysis.py b/loganalysis.py
index 80c8878..0f26922 100644
--- a/loganalysis.py
+++ b/loganalysis.py
@@ -16,23 +16,34 @@
#
"""Parse Shibboleth 2.x Identity Provider audit logfile and generate simple stats.
- Audit log file format: https://spaces.internet2.edu/display/SHIB2/IdPLogging"""
+ Audit log file format: https://wiki.shibboleth.net/confluence/display/SHIB2/IdPLogging"""
-import sys,fileinput
+import sys
+import fileinput
+import os
from optparse import OptionParser
from operator import itemgetter
def parseFiles(files,options):
"""Build datastructures from lines."""
lines = []
- for line in fileinput.input(files):
- lines.append(line.rstrip().split("|"))
+ if sys.version_info < (2, 5):
+ for line in fileinput.input(files):
+ lines.append(line.rstrip().split("|"))
+ else:
+ for line in fileinput.input(files, openhook=fileinput.hook_compressed):
+ lines.append(line.rstrip().split("|"))
db = {}
db['rp'], db['users'], db['msgprof'], db['logins'] = {},{},{},0
for event in lines:
- datetime,reqBind,reqId,rp,msgProfile,idp,respBind,respId,user,authnMeth,relAttribs,nameId,assertIds,EOL = event
+ try:
+ datetime,reqBind,reqId,rp,msgProfile,idp,respBind,respId,user,authnMeth,relAttribs,nameId,assertIds,EOL = event
+ except ValueError:
+ print """ERROR: Unsupported log file format or using compressed log files with Python < 2.5.%sSee the documentation in the Shibboleth wiki.""" % os.linesep
+ sys.exit(-1)
+
if msgProfile.lower().endswith(":sso"):
db['logins'] += 1
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list