Как я могу регистрировать производительность диска OS X Server?

Я знаю, что Activity Monitor существует для просмотра дискового ввода-вывода и других показателей производительности. Однако есть ли у Activity Monitor возможность регистрировать какие-либо из этих показателей?

Если нет, то как я могу регистрировать эти показатели в базе данных или в CSV-файле и как часто их следует регистрировать? Каждую секунду?

Я хочу запускать отчеты, чтобы узнать, в какое время дня на сервере много дискового ввода-вывода для управления емкостью. Также хочется иметь возможность регистрировать использованное и свободное место каждые 15 минут.

Ответы (1)

Вы можете использовать традиционные инструменты Unix, чтобы начать мониторинг прямо сейчас.

iostat 60 | tee /tmp/iostat_60.log

Статистику свободного места можно сгенерировать с помощью dfкоманды, но вы можете просто установить свои уровни предупреждений в серверном приложении и полагаться на предупреждения, чтобы уведомлять вас, когда пространство заполняется. Я не могу себе представить необходимость отслеживать пространство для хранения более одного раза в день, чтобы отображать рост или управлять вещами, но ваши потребности могут быть совершенно другими.

Я бы сказал, что 15-минутных (900 секунд для iostat) снимков активности ввода-вывода было бы достаточно, а ежечасные или ежедневные журналы дискового пространства были бы излишними для большинства серверов. Вы, вероятно, уменьшите интервал мониторинга во время периода исследования / настройки производительности, но изо дня в день эта статистика обычно просто потребляет ЦП и дисковое пространство и на самом деле не помогает вам управлять сервером.

После того, как вы решите, как часто вы хотите собирать данные, вы можете получить больше фантазии с помощью оболочки, чтобы запускать и останавливать скрипт / вырезать и обрабатывать файлы журнала ежедневно и т. д.

Я бы сказал, что вместо этого вы захотите взглянуть на инструменты, которые вам нужны для фактического анализа и обработки данных. Для одного сервера вы, вероятно, могли бы обойтись одним бесплатным запущенным экземпляром splunk и просто записывать данные в системный журнал.

Оттуда вы можете отображать/извлекать в электронную таблицу/действовать с данными очень гибким образом. Также вы можете взглянуть на elasticsearch , logstash и kibana .

На http://krypted.com/windows-server/stashbox-turning-a-mac-mini-into-a-logstash-server/ есть отличная запись Чарльза Эджа, объясняющая, как и почему вы будете использовать эти инструменты. чтобы приручить журналы и графические вещи. Если у вас это было, отправка статистики в системный журнал может быть очень простым способом решить вашу проблему мониторинга ввода-вывода на вашем сервере.

Я согласен, что 15-минутные снимки использования диска в моей ситуации излишни. Я, вероятно, могу обойтись ежедневно. Когда я запускаю команду df, она заполняет все разделы. Можно ли просто захватить /dev/sda1? Я также хотел бы, чтобы вывод был в файле csv как NAME_OF_DISK, Used, Available, Use% и не включал ничего другого.
Вы можете делать практически все, что угодно, grep, awk, and sedи у python действительно хороший ввод и вывод csv. Это зависит от того, любите ли вы сценарий.df | grep disk0s2 | awk '{ print $2 "," $3 "," $4}'
Потрясающий! Теперь, как я могу просто зафиксировать общий дисковый ввод-вывод, а не для запущенного приложения/процесса в том же формате csv?