Create log_memory_usage.py with following contents :
#! /usr/bin/python3 import json, psutil, datetime, sys, time f = open('memory_usage_'+sys.argv[1]+'.log', 'a') while True: txt=json.dumps((datetime.datetime.now().isoformat(),psutil.Process(int(sys.argv[1])).memory_info()._asdict()))+"\n" f.write(txt) f.flush() time.sleep(60)
Make it executable :
chmod +x log_memory_usage.py
Usage :
./log_memory_usage.py PID
By default it logs the memory usage info every 60 seconds in a file named memory_usage_PID.log in the same folder, if you want, you can change time.sleep(60) in the code to suit your needs.