CloudWatch Logs

Мониторинг и устранение неполадок в AWS

John Q. Martin

Principal Consultant

Ключевые понятия: события, потоки и группы журналов

  Событие журнала в виде одной записи с временной меткой, сообщением и временем приёма

  Поток журналов в виде последовательности событий из одного источника

  Группа журналов в виде набора связанных потоков с общими настройками хранения и доступа

 

  • /aws/lambda/function-name
  • /ecs/cluster-name/service-name
  • /var/log/application-name
Мониторинг и устранение неполадок в AWS

Архитектура CloudWatch Logs

Архитектура CloudWatch Logs: от приложения и агента до групп и потоков журналов, запросов, экспорта и подписок

Мониторинг и устранение неполадок в AWS

CloudWatch Logs и традиционное ведение журналов

Сравнение централизованного ведения журналов в CloudWatch с традиционным подходом через SSH и grep на каждом сервере

Мониторинг и устранение неполадок в AWS

Настройка унифицированного агента: EC2

 

Четырёхшаговая схема настройки унифицированного агента CloudWatch на EC2: от роли IAM до установки, настройки и запуска

{
  "logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/var/log/application.log",
            "log_group_name": "/aws/ec2/application",
            "log_stream_name": "{instance_id}",
            "timezone": "UTC"
          }
        ]
      }
    }}}
Мониторинг и устранение неполадок в AWS

Журналирование Lambda и ECS

 

Lambda: агент не нужен

  • Автоматически записывает журналы в /aws/lambda/function-name
  • Фиксирует вызовы, длительность, stdout/stderr и ошибки
  • Используйте структурированный JSON для удобных запросов

 

{
  "logDriver": "awslogs",
  "options": {
    "awslogs-group": "/ecs/my-application",
    "awslogs-region": "us-east-1",
    "awslogs-stream-prefix": "ecs",
    "awslogs-create-group": "true"
  }
}
Мониторинг и устранение неполадок в AWS

Введение в фильтры метрик

 

Что такое фильтры метрик?

  • Сканируют события журналов по шаблонам → публикуют метрики CloudWatch
  • Связывают журналы и метрики
  • Создаются на уровне группы журналов

 

Сценарии использования

  • Подсчёт числа ошибок
  • Отслеживание времени ответа из журналов
  • Мониторинг бизнес-событий (заказы, регистрации)
  • Запуск сигналов тревоги по шаблонам журналов
Мониторинг и устранение неполадок в AWS

Синтаксис шаблонов фильтрации

 

Три формата шаблонов фильтров метрик: простой текст, поля с разделителями-пробелами и нотация JSON с символом доллара и точкой

Мониторинг и устранение неполадок в AWS

Рекомендации по использованию фильтров метрик

 

Рекомендации по фильтрам метрик: тестировать шаблоны, устанавливать нулевое значение по умолчанию, группировать пространства имён и упрощать шаблоны

Мониторинг и устранение неполадок в AWS

Введение в CloudWatch Logs Insights

 

Что такое Log Insights?

  • Интерактивный сервис запросов внутри CloudWatch Logs
  • Позволяет запрашивать одну или несколько групп журналов
  • Результаты за секунды, инфраструктура не требуется

 

Три поддерживаемых языка запросов

  • CloudWatch Logs Insights QL
  • OpenSearch PPL (Piped Processing Language)
  • OpenSearch SQL
Мониторинг и устранение неполадок в AWS

Итоги видео

 

  • CloudWatch Logs: централизованное журналирование — события → потоки → группы
  • EC2: унифицированный агент с JSON-конфигурацией
  • Lambda: автоматически, без агента, используйте структурированный JSON
  • ECS: драйвер журналов awslogs в определении задачи
  • Фильтры метрик: извлекают метрики CloudWatch из шаблонов журналов
  • Log Insights: интерактивный сервис запросов — запросы рассмотрим в видео 4
Мониторинг и устранение неполадок в AWS

Давайте потренируемся!

Мониторинг и устранение неполадок в AWS

Preparing Video For Download...