USERS = [] USER_FREQS = {'total': {}, } for f in FORKS: if 'user' in f.keys() and not f['user'] in USERS: USERS.append(f['user']) if not f['user'] in USER_FREQS['total'].keys(): USER_FREQS['total'][f['user']] = 0 else: USER_FREQS['total'][f['user']] += 1 print(USERS) print(USER_FREQS) #sys.exit() VALID_FORKS_TXT = t.bold_black_on_bright_white('Valid Forks') print('\n{} {} from {} extrace lines'.format(len(FORKS), VALID_FORKS_TXT, len(LINES))) print('{} Invalid Forks'.format(len(INVALID_FORKS))) REPORTS['UNIQUE_EXECS'] = unique([o['exec'].split(' ')[0] for o in VALID_FORKS]) try: REPORTS['TOP_FORK_DURATIONS'] = sorted(VALID_FORKS, key=lambda F: F['time_ms'], reverse=True) except Exception as e: print('Unable to sort top fork durations') print(VALID_FORKS) traceback.print_exc()