Мониторинг с помощью SYSSTAT | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
iOS Developer. Professional Kotlin Backend Developer Flutter Mobile Developer Symfony Framework C++ Developer. Basic Unity Game Developer. Basic Java Developer. Professional
-35%
Highload Architect Unity Game Developer. Professional React.js Developer Специализация Java-разработчик
-25%
Алгоритмы и структуры данных
-16%
Scala-разработчик C# Developer. Professional
-23%
Разработчик голосовых ассистентов и чат-ботов Team Lead Архитектура и шаблоны проектирования NoSQL Web-разработчик на Python Golang Developer. Professional PostgreSQL Vue.js разработчик Супер-практикум по использованию и настройке GIT Разработчик IoT Подготовка к сертификации Oracle Java Programmer (OCAJP) Программист С HTML/CSS
Инфраструктура
Инфраструктурная платформа на основе Kubernetes Microservice Architecture Базы данных Highload Architect Reverse-Engineering. Professional
-8%
Network engineer. Basic Administrator Linux.Basic MongoDB Infrastructure as a code MS SQL Server Developer Cloud Solution Architecture Мониторинг и логирование: Zabbix, Prometheus, ELK Супер-практикум по использованию и настройке GIT Разработчик IoT Экcпресс-курс «ELK» Супер-интенсив "Tarantool" Экспресс-курс «CI/CD или Непрерывная поставка с Docker и Kubernetes» Экспресс-курс «Введение в непрерывную поставку на базе Docker»
Корпоративные курсы
Безопасность веб-приложений Экосистема Hadoop, Spark, Hive Пентест. Практика тестирования на проникновение Node.js Developer Java QA Engineer. Basic
-18%
Reverse-Engineering. Professional
-8%
DevOps практики и инструменты NoSQL Reverse-Engineering. Basic Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Game QA Engineer Супер - интенсив по Kubernetes Дизайн сетей ЦОД Экспресс-курс «IaC Ansible» Экспресс-курс по управлению миграциями (DBVC) Экспресс-курс "Версионирование и командная работа с помощью Git" Основы Windows Server
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

Мониторинг с помощью SYSSTAT

Linux_Deep_LAST_26.07_3.png

SYSSTAT — удобная утилита для измерения и анализа производительности системы. Рассмотрим различные команды.

Запись в файл суммарных показателей

vmstat -t 5 > /var/log/vmstat.log &

Запуск данной команды позволит записывать в файл суммарные показатели с 5-секундным интервалом (можно установить любой). Пример выдачи:

procs ————memory———- —swap— ——io—- —system— ——cpu—— —timestamp—
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 447272 1474168 170052 623788 0 0 0 3 0 0 1 0 98 1 0 2015-11-06 00:09:01 MSK
0 0 447272 1475648 170052 623792 0 0 0 26 254 144 1 1 96 2 0 2015-11-06 00:09:06 MSK
0 0 447272 1475904 170052 623792 0 0 0 0 71 90 0 0 100 0 0 2015-11-06 00:09:11 MSK

ВНИМАНИЕ: требуется установить пакет для съёма статистики:

apt-get install sysstat

Показатели по активным процессам

pidstat -d -r -u -h 5 > /var/log/pidstat.log &

Запуск данной команды позволит записывать в файл статистические показатели по активным процессам с 5-секундным интервалом (можно установить любой). Пример выдачи:

Linux 2.6.32-431.el6.x86_64 () 11/06/2015 _x86_64_ (4 CPU)
# Time PID %usr %system %guest %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s Command
1446758795 9 0.00 0.20 0.00 0.20 1 0.00 0.00 0 0 0.00 0.00 0.00 0.00 ksoftirqd/1
1446758795 980 0.00 0.00 0.00 0.00 0 0.00 0.00 249856 5136 0.13 0.00 0.80 0.00 rsyslogd
1446758795 2837 0.20 0.40 0.00 0.60 3 83.80 0.00 101108 952 0.02 0.00 0.00 0.00 pidstat
1446758795 12971 0.00 0.20 0.00 0.20 2 0.00 0.00 2950672 107984 2.75 0.00 0.00 0.00 mysqld
# Time PID %usr %system %guest %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s Command
1446758790 21 0.00 0.20 0.00 0.20 2 0.00 0.00 0 0 0.00 0.00 0.00 0.00 events/2
1446758790 2837 0.20 0.40 0.00 0.60 3 85.20 0.00 101108 952 0.02 0.00 0.00 0.00 pidstat
1446758790 20174 0.20 0.00 0.00 0.20 3 0.00 0.00 1240316 218264 5.56 0.00 0.00 0.00 ruby
# Time PID %usr %system %guest %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s Command
1446758785 2837 0.00 0.20 0.00 0.20 3 83.70 0.00 101108 924 0.02 0.00 0.00 0.00 pidstat
1446758785 12971 0.00 0.20 0.00 0.20 2 0.00 0.00 2950672 107984 2.75 0.00 0.00 0.00 mysqld

Суммарные показатели по нагрузке на дисковую подсистему

iostat -d -k -t -x -z 5 > /var/log/iostat.log &

Запуск данной команды позволит записывать в файл суммарные показатели по нагрузке на дисковую подсистему с 5-секундным интервалом (можно установить любой). Пример выдачи:

Linux 2.6.32-431.el6.x86_64 () 11/06/2015 _x86_64_ (4 CPU)
11/06/2015 12:18:03 AM
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.00 0.00 0.00 0.20 0.00 0.80 8.00 0.00 20.00 20.00 0.40
dm-0 0.00 0.00 0.00 0.20 0.00 0.80 8.00 0.00 20.00 20.00 0.40
11/06/2015 12:17:58 AM
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
11/06/2015 12:17:53 AM
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.03 1.58 0.02 1.23 1.00 10.40 18.31 0.07 55.78 31.92 3.98
scd0 0.00 0.00 0.00 0.00 0.00 0.00 8.00 0.00 1.30 1.30 0.00
dm-0 0.00 0.00 0.01 2.29 0.67 9.32 8.67 0.13 54.46 17.23 3.97
dm-1 0.00 0.00 0.04 0.04 0.14 0.16 8.00 0.04 574.35 0.66 0.00
dm-2 0.00 0.00 0.00 0.23 0.19 0.92 9.48 0.11 476.89 0.27 0.01

Есть вопрос? Напишите в комментариях!

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться