in cosmos/scripts/converting_log_to_csv.py [0:0]
def parse_line_for_formatting(line, writer):
# 2022-04-13 16:16:13:684 10 sec: 15743 operations; 1574.14 current ops/sec; est completion in 52 minutes READ:
# Count=14959, Max=613887, Min=1110, Avg=12876.19, 90=25807, 99=78143, 99.9=493311, 99.99=609279]
split_semicolon = line.split(';')
# '2022-04-13 16:16:13:684 10 sec: 15743 operations'
first_part = split_semicolon[0]
first_part_split = first_part.split(' ')
date = first_part_split[0]
time = first_part_split[1].rsplit(':', 1)[0]
# 1574.14 current ops/sec
second_part = split_semicolon[1].strip()
rps = second_part.rsplit('current ops/sec', 1)[0]
# est completion in 52 minutes READ: Count=14959, Max=613887, Min=1110, Avg=12876.19, 90=25807, 99=78143,
# 99.9=493311, 99.99=609279]
third_part = split_semicolon[2].strip()
if 'CLEANUP' in third_part:
return
operation = ''
count = ''
max_in_micro_sec = ''
min_in_micro_sec = ''
avg_in_micro_sec = ''
p9999_in_micro_sec = ''
p999_in_micro_sec = ''
p99_in_micro_sec = ''
p90_in_micro_sec = ''
for metrics in third_part.split(' '):
metrics = metrics.strip()
metrics = metrics.replace(']', '')
metrics = metrics.replace(',', '')
if ':' in metrics:
operation = metrics.replace(':', '')
elif 'Count=' in metrics:
count = metrics.replace('Count=', '')
elif 'Max=' in metrics:
max_in_micro_sec = metrics.replace('Max=', '')
elif 'Min=' in metrics:
min_in_micro_sec = metrics.replace('Min=', '')
elif 'Avg=' in metrics:
avg_in_micro_sec = metrics.replace('Avg=', '')
elif '99.99=' in metrics:
p9999_in_micro_sec = metrics.replace('99.99=', '')
elif '99.9=' in metrics:
p999_in_micro_sec = metrics.replace('99.9=', '')
elif '99=' in metrics:
p99_in_micro_sec = metrics.replace('99=', '')
elif '90=' in metrics:
p90_in_micro_sec = metrics.replace('90=', '')
row_in_csv = [date, time, operation, rps, count, max_in_micro_sec, min_in_micro_sec, avg_in_micro_sec,
p90_in_micro_sec, p99_in_micro_sec, p999_in_micro_sec, p9999_in_micro_sec]
writer.writerow(row_in_csv)