def test_us_dates(): """month before day""" env.IS_US_FMT = True parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-10-23 15:50:01.123") assert parsed.strftime( "%Y-%m-%d %H:%M:%S,%f") == "2018-10-23 15:50:01,123000"
def test_european_dates_with_comma_for_ms(): """ms for some reason is done with a comma in our logs""" env.IS_US_FMT = False parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-23-10 15:50:01,123") assert parsed.strftime( "%Y-%m-%d %H:%M:%S,%f") == "2018-10-23 15:50:01,123000"
def test_european_dates(): """day before month""" env.IS_US_FMT = False parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-23-10 15:50:01.123") assert parsed.strftime( "%Y-%m-%d %H:%M:%S,%f") == "2018-10-23 15:50:01,123000"
def grep_date(log_string): """gets just the date from the log""" # pylint: disable=line-too-long match = re.search( rb' *(?P<level>[A-Z]*) *\[(?P<thread_name>[^\]]*?)[:_-]?(?P<thread_id>[0-9]*)\] (?P<date>.{10} .{12})*', log_string) if match: date_value = match.group("date").decode('ascii') date_parser = dates.LogDateFormatParser() return date_parser.parse_timestamp(date_value) return dates.min_utc_time()
def test_european_dates_with_comma_for_ms(self): """ms for some reason is done with a comma in our logs""" orig = env.IS_US_FMT try: env.IS_US_FMT = False parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-23-10 15:50:01,123") self.assertEqual(parsed.strftime("%Y-%m-%d %H:%M:%S,%f"), "2018-10-23 15:50:01,123000") finally: env.IS_US_FMT = orig
def test_us_dates(self): """month before day""" orig = env.IS_US_FMT try: env.IS_US_FMT = True parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-10-23 15:50:01.123") self.assertEqual(parsed.strftime("%Y-%m-%d %H:%M:%S,%f"), "2018-10-23 15:50:01,123000") finally: env.IS_US_FMT = orig
def test_back_to_back(): """since this flips a "mode" we should test if combinations work""" parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-10-23 15:50:01.123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000" parsed = parser.parse_timestamp("2018-23-10 15:50:01.123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000" parsed = parser.parse_timestamp("2018-23-10 15:50:01.123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000" parsed = parser.parse_timestamp("2018-10-23 15:50:01.123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000"
def test_european_dates_with_permissive_time(self): """allow users to supply partial timestamps""" orig = env.IS_US_FMT orig_pt = env.PERMISSIVE_TIME try: env.IS_US_FMT = False env.PERMISSIVE_TIME = True parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-23-10") self.assertEqual(parsed.strftime("%Y-%m-%d %H:%M:%S,%f"), "2018-10-23 00:00:00,000000") parsed = parser.parse_timestamp("2018-23-10 15:") self.assertEqual(parsed.strftime("%Y-%m-%d %H:%M:%S,%f"), "2018-10-23 15:00:00,000000") parsed = parser.parse_timestamp("2018-23-10 15:50") self.assertEqual(parsed.strftime("%Y-%m-%d %H:%M:%S,%f"), "2018-10-23 15:50:00,000000") parsed = parser.parse_timestamp("2018-23-10 15:50:01") self.assertEqual(parsed.strftime("%Y-%m-%d %H:%M:%S,%f"), "2018-10-23 15:50:01,000000") finally: env.IS_US_FMT = orig env.PERMISSIVE_TIME = orig_pt
def __init__(self): "Constructor expects a date string supported by datetime.strptime." self.parser = dates.LogDateFormatParser()
def test_european_dates_with_comma_for_ms(): """ms for some reason is done with a comma in our logs""" parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-23-10 15:50:01,123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000"
def test_us_dates(): """month before day""" parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-10-23 15:50:01.123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000"
def test_european_dates(): """day before month""" parser = dates.LogDateFormatParser() parsed = parser.parse_timestamp("2018-23-10 15:50:01.123") assert parsed.strftime( parser.cassandra_log_format) == "2018-10-23 15:50:01,123000"