Exemple #1
0
 def handle(self, fn, retry, **options):
     result = parse_logs(
         os.path.join(get_setting('ROOT'), '%(key)s', fn),
         progress=progress_bar,
         retry=retry,
     )
     process_results(result, progress=progress_bar)
Exemple #2
0
 def test_addition(self):
     """Dates shouldn't clobber previous data"""
     for x in range(1, 4):
         process_results({None: {date(2001, 1, 1): {
             'browser': [('Firefox', '44'), ('Firefox', '44')],
             'delay': [100 * x, 20 * x],
             }}})
         self.assertObjects(
             LogValue.objects.filter(metric__name__in=['browser', 'delay']),
             ['count', 'avg', 'low', 'high'],
             (x * 2, None, None, None),
             (x * 2, [0, 60, 90, 120][x], 20, 100 * x)
         )
Exemple #3
0
 def test_agent_filters(self):
     """The user agents should be filtered"""
     process_results(parse_logs(self.get_log('agents')))
     self.assertObjects(LogValue.objects.filter(metric__name='os'),
         ['name__family', 'name__name'],
         ('Linux', '3.13'),
         ('Android', '5.1'),
     )
     self.assertObjects(LogValue.objects.filter(metric__name='device'),
         ['name__family', 'name__name'],
         ('Samsung', 'SM-N920C'),
     )
     self.assertObjects(LogValue.objects.filter(metric__name='browser'),
         ['name__family', 'name__name'],
         ('Samsung Internet', u'3.4'),
         ('Bot', 'Apache-HttpClient'),
         ('Bot', 'Baiduspider'),
         ('Bot', 'bingbot'),
         ('Bot', 'Googlebot'),
         ('Bot', 'Googlebot-Image'),
         ('Bot', 'Python Requests'),
         ('Bot', 'Sogou web spider'),
         ('Bot', 'ZEEFscraper'),
     )
Exemple #4
0
 def setUp(self):
     """Parse a log file in fixtures, analyse and compare to result"""
     super(BasicAnalysisTests, self).setUp()
     process_results(parse_logs(self.get_log('basic')))
Exemple #5
0
 def setUp(self):
     super(DataReportTests, self).setUp()
     process_results(parse_logs(self.get_log('reportable')))
     self.metric = LogMetric.objects.get(name='browser')