
Есть ли какая-либо возможная команда или способ проверить, какой процесс вызвал высокую загрузку ЦП за последние 24 часа, потому что вчера вечером в 23:30 дата:-30-ноя-2022 мы получили оповещение о том, что загрузка ЦП была высокой, поэтому необходимо выяснить, какой процесс вызвал высокую загрузку.
решение1
сар
Вы можете использоватьсар. Он включен как часть sysstat. Для установки:
sudo apt-get install sysstat
Затем включите его, отредактировав /etc/default/sysstat и установив «ENABLED» на значение true.
Это отслеживает вашу систему и генерирует отчет каждые 10 минут, меняя их каждые 10 минут. Вы можете изменить это поведение, отредактировав sysstat crontab в /etc/cron.d/sysstat или изменив настройки ротации в настройках sysstat в /etc/sysstat/sysstat.
Вы можете создать отчет в реальном времени с помощью следующей команды:
sar -u 1 3
sysstat будет собирать данные о фоновом использовании ЦП каждую минуту, сохраняя их в /var/log/sysstat/. Затем вы можете импортировать эти данные для анализа, используя либо программу электронных таблиц, либо пользовательский инструмент, такой как sargraph.
на вершине
Альтернативой является использованиена вершинекоторый может хранить необработанные счетчики в файле для долгосрочного анализа на системном уровне иуровень процесса. По умолчанию ежедневные файлы журнала сохраняются в течение 28 дней. Отчеты о системной активности можно создавать из файла журнала с помощью команды atopsar.
atop доступен в репозиториях Ubuntu по адресу:sudo apt install atop
решение2
Верхнее командование
Верх в пакетном режиме
top -b -n 1
А потом вылови его с Седом.
top -b -n 1 | sed -n 8,8p
решение3
Прямой доступ к файлу журнала
/var/log/syslog
Убавьте его с помощью grep
cat /var/log/syslog | grep Nov | grep 30 | grep 11: | grep pid=
решение4
Команда процесса
Статус процесса (пс)
ps
ps -eo lstart,pid,time,user,comm,pcpu |\ grep 2022 |\ grep нояб |\ grep пм |\ грэп 11 |\ сортировка -n -k 10 -r |\ голова --строки 1
Объяснение
ps (Состояние процесса) -e (все процессы) -o (форматировать вывод) lstart (длинный старт) pid (идентификация процесса) время (время) пользователь (пользователь) комм (команда) pcpu (процент использования процессора)
Вывод передается в другую программу, grep.
grep 2022 | grep нояб. | grep пм | грэп 11
Затем сортируется по номеру и столбцу, содержащему процент загрузки ЦП.
сортировка -n -k 10 -r -n (число) -k (столбец) -r (обратный)
Затем подсоединяется к головке, чтобы пропускать только первую линию
голова --строки 1