import time import datetime class LogParser(): """ Class used to parse logs. """ first_time = None """ Time of the first line. """ previous_time = None """ Time of the previous line. """ def __init__(self): """ Empty _\_\_init\_\__ -method. """ pass def parse_logs(self, log_arr, time_format, zero_pad=True): """ Function that parses a log-array as given by cli_input.CliInput. Returns a list of tuples from _parse_line_. """ logs = [] for line in log_arr: logs.append(self.parse_line(line, time_format, zero_pad)) return logs def get_diff(self, line, time_format, zero_pad=True): """ Parses a single line from a log-array. Returns the difference in time from the previous line """ msg_time = None msg_time_set = False if zero_pad: line = line.zfill(2) try: try: msg_time = time.strptime(line, time_format) msg_time_set = True except ValueError, v: msg_time = line.split(v.args[0][26:])[0] msg_time = time.strptime(msg_time, time_format) if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True else: if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True if msg_time_set: if self.first_time == None and self.previous_time == None: self.first_time = msg_time self.previous_time = msg_time time_diff_from_previous = time.mktime(msg_time) - time.mktime(self.previous_time) self.previous_time = msg_time return(time_diff_from_previous) else: return None except ValueError: return None def parse_line(self, line, time_format, zero_pad=True): """ Parses a single line from a log-array. Returns the tuple [time from first line] [time from last line] : [line's contents] """ orig_line = line msg_time = None msg_time_set = False if zero_pad: line = line.zfill(2) try: try: msg_time = time.strptime(line, time_format) msg_time_set = True except ValueError, v: msg_time = line.split(v.args[0][26:])[0] msg_time = time.strptime(msg_time, time_format) if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True else: if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True if msg_time_set: if self.first_time == None and self.previous_time == None: self.first_time = msg_time self.previous_time = msg_time time_diff_from_begin = time.mktime(msg_time) - time.mktime(self.first_time) time_diff_from_previous = time.mktime(msg_time) - time.mktime(self.previous_time) self.previous_time = msg_time return(datetime.timedelta(seconds=time_diff_from_begin), datetime.timedelta(seconds=time_diff_from_previous), orig_line) else: return None except ValueError: return None
class LogParser
Class used to parse logs.
class LogParser(): """ Class used to parse logs. """ first_time = None """ Time of the first line. """ previous_time = None """ Time of the previous line. """ def __init__(self): """ Empty _\_\_init\_\__ -method. """ pass def parse_logs(self, log_arr, time_format, zero_pad=True): """ Function that parses a log-array as given by cli_input.CliInput. Returns a list of tuples from _parse_line_. """ logs = [] for line in log_arr: logs.append(self.parse_line(line, time_format, zero_pad)) return logs def get_diff(self, line, time_format, zero_pad=True): """ Parses a single line from a log-array. Returns the difference in time from the previous line """ msg_time = None msg_time_set = False if zero_pad: line = line.zfill(2) try: try: msg_time = time.strptime(line, time_format) msg_time_set = True except ValueError, v: msg_time = line.split(v.args[0][26:])[0] msg_time = time.strptime(msg_time, time_format) if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True else: if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True if msg_time_set: if self.first_time == None and self.previous_time == None: self.first_time = msg_time self.previous_time = msg_time time_diff_from_previous = time.mktime(msg_time) - time.mktime(self.previous_time) self.previous_time = msg_time return(time_diff_from_previous) else: return None except ValueError: return None def parse_line(self, line, time_format, zero_pad=True): """ Parses a single line from a log-array. Returns the tuple [time from first line] [time from last line] : [line's contents] """ orig_line = line msg_time = None msg_time_set = False if zero_pad: line = line.zfill(2) try: try: msg_time = time.strptime(line, time_format) msg_time_set = True except ValueError, v: msg_time = line.split(v.args[0][26:])[0] msg_time = time.strptime(msg_time, time_format) if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True else: if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True if msg_time_set: if self.first_time == None and self.previous_time == None: self.first_time = msg_time self.previous_time = msg_time time_diff_from_begin = time.mktime(msg_time) - time.mktime(self.first_time) time_diff_from_previous = time.mktime(msg_time) - time.mktime(self.previous_time) self.previous_time = msg_time return(datetime.timedelta(seconds=time_diff_from_begin), datetime.timedelta(seconds=time_diff_from_previous), orig_line) else: return None except ValueError: return None
var first_time
Time of the first line.
var previous_time
Time of the previous line.
def __init__(
self)
Empty __init__ -method.
def __init__(self): """ mpty _\_\_init\_\__ -method. """ pass
def get_diff(
self, line, time_format, zero_pad=True)
Parses a single line from a log-array. Returns the difference in time from the previous line
def get_diff(self, line, time_format, zero_pad=True): """ arses a single line from a log-array. Returns the difference in time from the previous line """ msg_time = None msg_time_set = False if zero_pad: line = line.zfill(2) try: try: msg_time = time.strptime(line, time_format) msg_time_set = True except ValueError, v: msg_time = line.split(v.args[0][26:])[0] msg_time = time.strptime(msg_time, time_format) if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True else: if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True if msg_time_set: if self.first_time == None and self.previous_time == None: self.first_time = msg_time self.previous_time = msg_time time_diff_from_previous = time.mktime(msg_time) - time.mktime(self.previous_time) self.previous_time = msg_time return(time_diff_from_previous) else: return None except ValueError: return None
def parse_line(
self, line, time_format, zero_pad=True)
Parses a single line from a log-array. Returns the tuple [time from first line] [time from last line] : [line's contents]
def parse_line(self, line, time_format, zero_pad=True): """ arses a single line from a log-array. Returns the tuple [time from first line] [time from last line] : [line's contents] """ orig_line = line msg_time = None msg_time_set = False if zero_pad: line = line.zfill(2) try: try: msg_time = time.strptime(line, time_format) msg_time_set = True except ValueError, v: msg_time = line.split(v.args[0][26:])[0] msg_time = time.strptime(msg_time, time_format) if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True else: if(msg_time.tm_year == 1900): msg_time=time.struct_time((2001, msg_time.tm_mon, msg_time.tm_mday, msg_time.tm_hour, msg_time.tm_min, msg_time.tm_sec, msg_time.tm_wday, msg_time.tm_yday, msg_time.tm_isdst)) msg_time_set = True if msg_time_set: if self.first_time == None and self.previous_time == None: self.first_time = msg_time self.previous_time = msg_time time_diff_from_begin = time.mktime(msg_time) - time.mktime(self.first_time) time_diff_from_previous = time.mktime(msg_time) - time.mktime(self.previous_time) self.previous_time = msg_time return(datetime.timedelta(seconds=time_diff_from_begin), datetime.timedelta(seconds=time_diff_from_previous), orig_line) else: return None except ValueError: return None
def parse_logs(
self, log_arr, time_format, zero_pad=True)
Function that parses a log-array as given by cli_input.CliInput. Returns a list of tuples from parse_line.
def parse_logs(self, log_arr, time_format, zero_pad=True): """ unction that parses a log-array as given by cli_input.CliInput. Returns a list of tuples from _parse_line_. """ logs = [] for line in log_arr: logs.append(self.parse_line(line, time_format, zero_pad)) return logs
Documentation generated by
pdoc
0.2.4.
pdoc is in the public domain with the
UNLICENSE.