Этот вопрос проверяет знание инструментов для отслеживания состояния и производительности продакшн-систем.
Для мониторинга используют Prometheus, Grafana и Zabbix, а для логирования — ELK Stack (Elasticsearch, Logstash, Kibana) и Loki. Эти инструменты помогают отслеживать метрики и анализировать логи.
Мониторинг и логирование критически важны для диагностики проблем и поддержания надежности продакшн-систем.
Мониторинг:
Prometheus: Собирает метрики (CPU, память, запросы) и поддерживает алерты.
Пример: Экспорт метрик из Go-приложения:
import "github.com/prometheus/client_golang/prometheus/promhttp"
func main() {
http.Handle("/metrics", promhttp.Handler())
http.ListenAndServe(":8080", nil)
}Grafana: Визуализация метрик из Prometheus.
Zabbix: Мониторинг серверов и приложений.
Логирование:
ELK Stack: Elasticsearch для хранения логов, Logstash для обработки, Kibana для визуализации.
Loki: Легковесное решение для логов, интегрируется с Grafana.
Sentry: Отслеживание ошибок в приложениях.
Когда использовать:
Prometheus и Grafana для метрик и визуализации.
ELK или Loki для анализа логов.
Sentry для отслеживания ошибок.
Вывод:
Prometheus, Grafana и ELK/Loki — стандарт для мониторинга и логирования, обеспечивающий полный контроль над продакшн-системами.