Теперь, когда в одной из DBS, операции ввода-вывода с высокой записью наблюдаются в хранилище в определенное время каждый день .. Возможно ли найдите, какой процесс выполняет этот ввод-вывод с высокой скоростью записи ... Любые команды, связанные с ОС, чтобы отслеживать, откуда приходят эти запросы ... кроме iostat и top
Раньше я пробовал htop. Кажется, это отслеживает использование ввода-вывода на основе процесса.
По-видимому, на Github есть много других опций, таких как «взгляды» и «поверх».
Альтернатива iotop для не -пользователя root без привилегий sudo
Это заставляет меня задаться вопросом, является ли ваша конкретная ситуация чем-то уникальным и может ли потребоваться некоторая настройка. (Некоторые люди заходят так далеко, что выступают за синтаксический анализ необработанной статистики, поступающей от proc ). Существует множество вариантов, включая iodump (, написанный на Perl ).
root@kanga:~# while true; do sleep 1; dmesg -c; done | perl iodump
^C# Caught SIGINT.
TASK PID TOTAL READ WRITE DIRTY DEVICES
firefox 4450 4538 251 4287 0 sda4, sda3
kjournald 2100 551 0 551 0 sda4
firefox 28452 185 185 0 0 sda4
kjournald 782 59 0 59 0 sda3
pdflush 31 30 0 30 0 sda4, sda3
syslogd 2485 2 0 2 0 sda3
firefox 28414 2 2 0 0 sda4, sda3
firefox 28413 1 1 0 0 sda4
firefox 28410 1 1 0 0 sda4
firefox 28307 1 1 0 0 sda4
firefox 28451 1 1 0 0 sda4
https://www.xaprb.com/blog/2009/08/23/how-to-find-per-process-io-statistics-on-linux/
#!/bin/bash
hostname=`hostname -s`
carbon_host=YOUR_CARBON_HOSTNAME_OR_IP
carbon_port=2003
pidstat -h -d 1 | grep --line-buffered -v '^$' | grep --line-buffered -v '^#' | grep --line-buffered -v '^Linux' | awk --assign=hostname=${hostname} '{ printf "servers.%s.pidstat.%s.read %s %s\nservers.%s.pidstat.%s.write %s %s\n", hostname, $6, $3, $1, hostname, $6, $4, $1 ; fflush(); }' > /dev/tcp/${carbon_host}/${carbon_port}
https://serverfault.com/questions/574708/report-per-process-io-stats-with-pidstat-or-sar
https://serverfault.com/questions/169676/howto-check-disk-i-o-utilisation-per-process