6

Я ищу способ записывать загрузку процессора в текстовый файл каждые 10 секунд.

Как я могу сделать это? Я использую Ubuntu 12.04.

2 ответа2

3

Загрузка процессора проста:

Из командной строки:
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).

1

Если вы работаете на atop как демон, он будет регистрировать огромное количество данных о состоянии системы: использование процессора, список процессов, ввода - вывода, использование диска / памяти и многое другое. Затем вы можете просмотреть данные с помощью atop -r [filename] .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .