blob: c9c51b1632038dd671fe00b48c548108f3056546 [file] [log] [blame]
#! /usr/bin/python
"""Parses the actual memory usage from TCMalloc.
This goes through logs that have the actual allocated memory (not sampled) in
the logs. The output is of the form of:
time (in seconds from some base time), amount of memory allocated by the
application
"""
import argparse
from utils import compute_total_diff
from datetime import datetime
pretty_print = True
parser = argparse.ArgumentParser()
parser.add_argument("filename")
args = parser.parse_args()
my_file = open(args.filename)
output_file = open("raw_memory_data.csv", "a")
base_time = datetime(2014, 6, 11, 0, 0)
prev_line = ""
half_entry = (None, None)
for line in my_file:
if "Output Heap Stats:" in line:
total_diff = compute_total_diff(line, base_time)
half_entry = (total_diff, None)
if "Bytes in use by application" in line:
total_diff = half_entry[0]
memory_used = int(line.strip().split()[1])
half_entry = (None, None)
output_file.write("{0},{1}\n".format(total_diff, memory_used))