Я работаю над получением 'Среднее время чтения (мс)' и 'Среднее время записи (мс) 'из команды "iostat -xnp".
В Linux есть команда' / proc / diskstats ", которая дает мне" Время, потраченное на чтение миллисекунд "и" Время, потраченное на запись в миллисекундах и "количество завершенных чтений", и «пишет завершено». Итак, я могу разделить «Время, потраченное на чтение» на «Количество завершенных чтений», чтобы получить среднее время чтения (мс).
Чтобы получить аналогичный результат, я использую уравнение ниже. Пожалуйста, исправьте, если это не так.
пример вывода iostat:
------------------------
r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
0.8 3.7 43.5 38.3 0.0 0.0 0.8 0.4 0 0 c0d0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0 0 c0t1d0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 c2t1d0s2
Average_time_spent_reading (ms) = number_of_reads_per_second * average_service_time (ms) / (number_of_reads_per_second + number_of_writes_per_second).
Average_time_spent_writing (ms) = number_of_writes_per_second * average_service_time (ms) / (number_of_reads_per_second + number_of_writes_per_second)
Заранее спасибо.
Вы можете решить эту проблему с помощью DTrace - и если вы воспользуетесь DTrace Toolkit ( http://www.brendangregg.com/dtracetoolkit.html ), вы увидите, как это делается. Solaris 11 и более поздние версии позволяют pkg install system / dtrace / dtrace-toolkit
; Я думаю, что для Solaris 10 вам нужно будет получить его напрямую с веб-сайта Брендана.