Мониторинг краткосрочных процессов пакетных заданий Python с использованием Prometheus - PullRequest
0 голосов
/ 28 февраля 2019

Как я могу отслеживать процессы Python (скажем, какой-нибудь скрипт, который периодически запускается демоном cron) с помощью Prometheus?

Обратите внимание, что это не веб-приложение, а недолговечный процесс, который периодически запускаетсяcron демон.Этот скрипт появляется, выполняет свою работу и завершается.Один и тот же скрипт на python запускается демоном cron несколько раз в день (примерно 100 000 раз).Я хочу получить несколько статистических данных из различных прогонов этого скрипта (например: время, необходимое для запуска конкретной функции, сколько процессора и памяти она потребляет и т. Д.)

1 Ответ

0 голосов
/ 28 февраля 2019

Возможно, вы захотите взглянуть на Пушгейт Прометея : всякий раз, когда ваш скрипт завершает работу, он может выдвигать собранные метрики (например, гистограмму того, сколько времени потребовались вызовы вашей функции, общее использование ЦП, пиковое использование памяти).и т. д.).

Похоже, вы говорите, что ваш скрипт будет запускаться примерно раз в секунду.Я надеюсь, что это означает что-то вроде «каждые 5 минут для каждого из 300 арендаторов».В таком случае вы бы добавили метрики к метке tenant_id и увидели бы метрики на каждого арендатора или агрегированные метрики.

Если ваш скрипт выполняется один раз в секунду с теми же параметрами /конфигурации, то вы, вероятно, потеряете некоторые метрики, потому что несколько скриптов могут завершаться в течение одной секунды, все выдвигают свои метрики и только метрики последнего будут собираться Прометеем (так как я считаю, что вы не можете установить интервал сбора нижечем 1 секунда в Прометея).

...