Files
Alexander Abakumov 15e744da49 Initial commit: Complete Software Architecture course with 11 modules
- Added comprehensive course structure with 11 modules
- Included theoretical content, practical examples, and tasks
- Multi-language code examples (Java, Rust, Node.js, Python)
- Detailed analysis of architectural approaches and trade-offs
- Complete caching strategies documentation
- Architecture examples from real-world systems (Twitter, Netflix, Uber)
- Structured navigation and learning path
- Ready for educational use
2025-09-09 22:08:07 +03:00

114 lines
4.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Модуль 5: Мониторинг и наблюдаемость
## Навигация
- [🏠 Главная страница курса](../../README.md)
---
## Описание модуля
Этот модуль посвящен изучению современных подходов к мониторингу и наблюдаемости в распределенных системах. Студенты изучат принципы сбора метрик, логирования, трассировки и создания эффективных систем мониторинга.
## Содержание модуля
### 1. [Основы мониторинга](sections/01-monitoring-basics.md)
- Цели и типы мониторинга
- Метрики мониторинга (Counters, Gauges, Histograms, Summaries)
- Принципы проектирования систем мониторинга
### 2. [Prometheus и Grafana](sections/02-prometheus-grafana.md)
- Архитектура Prometheus
- PromQL (язык запросов Prometheus)
- Создание дашбордов в Grafana
- Настройка алертов
### 3. [Логирование](sections/03-logging.md)
- Structured Logging
- Log Levels и Correlation ID
- ELK Stack (Elasticsearch, Logstash, Kibana)
- Fluentd для сбора логов
### 4. [Distributed Tracing](sections/04-distributed-tracing.md)
- Принципы распределенной трассировки
- OpenTelemetry
- Jaeger для анализа трассировок
- Интеграция с микросервисами
### 5. [Observability](sections/05-observability.md)
- Три столпа наблюдаемости
- Health Checks
- Custom Metrics
- Паттерны наблюдаемости
### 6. [Alerting](sections/06-alerting.md)
- Принципы алертинга
- Правила оповещений Prometheus
- Конфигурация Alertmanager
- Предотвращение усталости от алертов
### 7. [SLI/SLO/SLA](sections/07-sli-slo-sla.md)
- SLI (Service Level Indicators)
- SLO (Service Level Objectives)
- SLA (Service Level Agreements)
- Мониторинг соответствия SLO
## Ключевые компетенции
После изучения модуля студенты будут уметь:
- Проектировать системы мониторинга
- Настраивать Prometheus и Grafana
- Реализовывать структурированное логирование
- Настраивать распределенную трассировку
- Создавать эффективные алерты
- Определять и мониторить SLI/SLO/SLA
## Практические задания
1. **Настройка мониторинга**
- Установка и конфигурация Prometheus
- Создание дашбордов в Grafana
- Настройка сбора метрик из приложений
2. **Структурированное логирование**
- Настройка ELK Stack
- Реализация Correlation ID
- Создание шаблонов логов
3. **Distributed Tracing**
- Настройка OpenTelemetry
- Интеграция с Jaeger
- Анализ трассировок
4. **Система алертинга**
- Создание правил алертов
- Настройка Alertmanager
- Интеграция с уведомлениями
5. **SLI/SLO/SLA**
- Определение ключевых метрик
- Создание SLO
- Мониторинг соответствия целям
6. **Observability Dashboard**
- Создание комплексного дашборда
- Интеграция метрик, логов и трассировок
- Настройка автоматических проверок
## Дополнительные ресурсы
- [Prometheus Documentation](https://prometheus.io/docs/) - официальная документация Prometheus
- [Grafana Documentation](https://grafana.com/docs/) - документация Grafana
- [OpenTelemetry](https://opentelemetry.io/) - стандарт для наблюдаемости
- [Jaeger Documentation](https://www.jaegertracing.io/docs/) - документация Jaeger
- [ELK Stack](https://www.elastic.co/elastic-stack/) - стек для логирования
## Критерии оценки
- Понимание принципов мониторинга (20%)
- Навыки работы с Prometheus и Grafana (25%)
- Опыт настройки логирования (20%)
- Знание Distributed Tracing (15%)
- Навыки создания алертов (10%)
- Понимание SLI/SLO/SLA (10%)