Имеется задача измерять производительность записываемых данных на диск. Ребята из генту, не знаю когда и зачем, решили, что олдскульный iostat убог и запилили чудо-юдо dstat. Первое что поражает это цветастоть в консоли, которая в свое время покорила многих людей (помните «дайте пример PS1» из начала 2000-х ?). К сожалению, половину полей из iostat новый dstat просто не показывает. Плюс, до всего надо догадываться самому, ибо все именуется либо «read», либо «writ» и по числам гадать, что это за цифры.
http://dag.wieers.com/home-made/dstat/
Документация надо признать тоже не блещет подробностями. Но самое удивительное, что цифры по дисковой системе берутся с потолка: неважно как работает диск, если в него пишутся данные хоть целый день, на деле ... на деле все не так. Когда горит лампочка/светодиод или очень активно мерцает ощущаются тормоза в системе, но не будем об этом баге, 12309 или как там его. Но dstat никак это не отражает, он может показывать tps в 300-500 и запись по 1-2mb даже тогда, когда светодиод не горит (кстати, тормозов вообще нет). Когда горит - цифры не меняются. Вообще. Всегда. dstat скорей всего не причем, он просто берет данные из /proc. Я просто в шоке.
Вопрос тем, кто знает как измерять реальную текущую нагрузку на диски, в линуксе это вообще реально? Или из серии фантастики, что пишется в /proc и есть «реальные» данные; хотя, по только что описанному опыту это не так ?
P.S. Ядро 3.7.4, диск какой-то samsung на sata II, smart в норме, hdparm -Tt = 3400/120 MB/s (точнее не могу дать подробностей, комп на работе и выключен).