summaryrefslogtreecommitdiffstats
path: root/doc/AnalyticsWebReport.py
blob: 89c7771a98ade209c3ca182ff6a4b27175955024 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import os
import sys
import ELKConnect as ec
import AnalyticsConnect as ac
import TRexDataAnalysis as tr
import time
import datetime


def main(verbose=False, source='elk', detailed_test_stats='yes'):
    current_date = time.strftime("%Y-%m-%d")
    k_days_ago = datetime.datetime.now() - datetime.timedelta(days=15)
    start_date = str(k_days_ago.date())
    if source == 'ga':
        if verbose:
            print('Retrieving data from Google Analytics')
        analytics = ac.initialize_analyticsreporting()
        response = ac.get_report(analytics, start_date, current_date)
        all_data_dict, setups = ac.export_to_tuples(response)
    if source == 'elk':
        elk_manager = ec.ELKManager(hostname='sceasr-b20', index='trex_perf-*', port=9200)
        all_data_dict = elk_manager.fetch_and_parse()
    dest_path = os.path.join(os.getcwd(), 'build', 'images')
    if verbose:
        print('Saving data to %s' % dest_path)
        if detailed_test_stats:
            print('generating detailed table for test results')
    tr.create_all_data(all_data_dict, current_date, save_path=dest_path,
                       detailed_test_stats=detailed_test_stats)
    if verbose:
        print('Done without errors.')


if __name__ == "__main__":
    main()