Мне нужна программа или инструмент для записи использования памяти (ОЗУ) и сохранения этих данных в файл, чтобы я мог открыть этот файл и увидеть результат самостоятельно, а также сравнить его с другими.
решение1
Вы можете использовать следующую команду в bash следующим образом:
for i in `seq 0 60`; do
echo `cat /proc/meminfo | grep Active: | sed 's/Active: //g'` >> usage.txt
sleep 1m
done
Эта команда будет записывать текущее использование памяти в файл с именем «usage.txt» каждую минуту в течение 1 часа.
Если вы хотите, вы можете изменить usage.txt
часть команды, чтобы сохранить под другим именем. Вы также можете изменить команду, sleep 1m
чтобы изменить время между каждой записью и '60' в seq
разделе вверху, чтобы изменить количество записей, которые будут записаны.
После завершения ввода данных у вас будет текстовый файл с записями, который можно импортировать в электронную таблицу для удобства сравнения.
EDIT: Если вы также хотите записывать общий объем памяти при каждой записи, вы можете использовать следующие команды:
for i in `seq 0 60`; do
echo `cat /proc/meminfo | grep Active: | sed 's/Active: //g'`/`cat /proc/meminfo | grep MemTotal: | sed 's/MemTotal: //g'` >> usage.txt
sleep 1m
done
Вместо этого эти команды будут записывать записи в форме<active>/<total>
решение2
sysstatделает именно это -- работает по расписанию cron и записывает различные системные метрики (ЦП, ОЗУ, использование блочных устройств и т. д.). В общем, вы apt-get install sysstat
можете забыть об этом. По умолчанию он сохраняет метрики за последний месяц.
Позже, когда вам понадобится диагностировать проблему, вы можете использовать ее CLI,сар, для просмотра данных или стороннего графического интерфейса пользователя,ксардля визуализации.