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

Материалы раздела рассматривают логи, метрики, трассировки, профилирование, проверки состояния, оповещения и методы диагностики на уровнях приложения, операционной системы, сети, хранилищ и инфраструктуры.

Основные направления

  • Основы наблюдаемости и диагностики — сигналы, симптомы, ошибки, отказы, деградация, первопричины, базовые линии и формирование проверяемых гипотез.
  • Логи и события — структурированное журналирование, контекст, correlation ID, централизованный сбор, хранение, поиск и защита чувствительных данных.
  • Метрики и мониторинг — типы метрик, временные ряды, golden signals, RED, USE, кардинальность, dashboards и контроль состояния ресурсов и сервисов.
  • Распределённая трассировка — traces, spans, propagation контекста, анализ критического пути и поиск задержек между компонентами.
  • Профилирование и анализ производительности — CPU, память, I/O, блокировки, flame graphs, нагрузочное тестирование и поиск узких мест.
  • Проверки состояния и внешнее наблюдение — health checks, synthetic monitoring, real user monitoring, black-box и white-box проверки.
  • Оповещения и управление сигналами — условия срабатывания, пороги, anomaly detection, дедупликация, маршрутизация, эскалация и снижение alert fatigue.
  • Troubleshooting и поиск первопричин — временные шкалы, карты зависимостей, метод исключения, сравнение с исправным состоянием и диагностика по уровням системы.
  • Эксплуатация средств наблюдаемости — сборщики и агенты, хранение телеметрии, retention, стоимость, доступность диагностических систем и OpenTelemetry.

Основные вопросы раздела

Материалы раздела должны помогать отвечать на следующие вопросы:

  • Какие сигналы позволяют определить состояние системы и пользовательского сценария?
  • Чем наблюдаемость отличается от мониторинга и диагностики?
  • Какие события следует записывать в логи и какой контекст к ним добавлять?
  • Какие метрики характеризуют нагрузку, ошибки, задержки и насыщение ресурсов?
  • Как связать запросы между несколькими сервисами с помощью трассировки?
  • Когда требуется профилирование CPU, памяти, ввода-вывода или блокировок?
  • Чем внутренние проверки отличаются от наблюдения системы снаружи?
  • Как построить оповещение, которое требует действия и не создаёт лишнего шума?
  • Как сформировать и проверить гипотезу о причине неисправности?
  • Как определить границу проблемы между приложением, сетью, хранилищем и инфраструктурой?
  • Как восстановить последовательность событий, предшествовавших отказу?
  • Как управлять объёмом, сроком хранения и стоимостью телеметрии?

Границы раздела

Раздел посвящён сбору и анализу диагностических данных, мониторингу состояния и поиску причин технических проблем.

Механизмы конкретных операционных систем рассматриваются в разделе операционных систем. Сетевая диагностика опирается на раздел сетей и протоколов, а диагностика баз данных — на раздел данных и хранилищ. Реагирование на инциденты и восстановление сервиса относятся к разделу доставки и эксплуатации. Надёжность и поведение системы при частичных отказах рассматриваются в разделе распределённых систем и надёжности.

в этой папке 0 элементов