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
This commit is contained in:
commit
15e744da49
107 files changed
+61762
No files matched your search
@@ -0,0 +1,113 @@
|
||||
# Модуль 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%)
|
||||
Reference in new issue
Block a user