Я ищу способ записывать загрузку процессора в текстовый файл каждые 10 секунд.
Как я могу сделать это? Я использую Ubuntu 12.04.
Я ищу способ записывать загрузку процессора в текстовый файл каждые 10 секунд.
Как я могу сделать это? Я использую Ubuntu 12.04.
Загрузка процессора проста:
Из командной строки:
while ( sleep 10 ) ; do cat /proc/loadavg >> mylogfile ; done
Команда сна будет спать 10 секунд, а затем вернется с возвращаемым значением 0 (иначе успех). Мы злоупотребляем этим, чтобы получить компактный (истинный) сон 10.
/ Proc / loadavg содержит нагрузки avarages на сегодняшний день , в течение последних 5 минут, и в течение последних 15 минут. Если вы регистрируетесь каждые 10 секунд, тогда вас интересует только первое значение.
Или в скрипте (используя bash).
#!/bin/sh # Using /bin/sh which is guaranteed to be present on any posix system. # If you want to add shell specific parts in the script than replace this. # E.g. if you want to use bash specific stuff then change it to: # #!/usr/bin/env bash # Make sure that the shebang is on the first line of the script (no comments above it!) # While true, pause 10 seconds, then append information to Mylogfile # while ( sleep 10 ) ; do cat /proc/loadavg >> mylogfile ; done
Мы можем добавить cat /proc /meminfo к информации, которую мы добавляем в файл журнала. /proc /meminfo довольно обширный и будет много регистрировать. Если вы хотите фильтровать только определенную информацию о памяти, пожалуйста, добавьте это в пост.
Простейшая форма этого приведет к:
while (sleep 10) ; do cat /proc/loadavg /proc/meminfo >> mylogfile ; done
).
Если вы работаете на atop
как демон, он будет регистрировать огромное количество данных о состоянии системы: использование процессора, список процессов, ввода - вывода, использование диска / памяти и многое другое. Затем вы можете просмотреть данные с помощью atop -r [filename]
.