Использование логов в контексте для устранения проблем Kubernetes (K8s)
Использование логов в контексте для устранения проблем Kubernetes (K8s)
Введение
Современные приложения работают в распределённых средах. Они генерируют данные наблюдаемости, такие как метрики, логи и трассировки. Наличие всех данных в одном месте часто недостаточно, поскольку может потребоваться ручная корреляция. Понимание поведения и производительности распределённых приложений важно для эффективного устранения неполадок. Ключ-АСТРОМ автоматически связывает и помещает данные в контекст для удобного устранения неполадок и аналитики. Этот автоматизированный подход не только упрощает диагностику, но и улучшает общий опыт аналитики, позволяя командам с лёгкостью оптимизировать производительность приложений.
Целевая аудитория
Эта статья предназначена для разработчиков и инженеров по надёжности (SRE), которые участвуют в разработке, развёртывании и сопровождении современных приложений. В ней даются советы, помогающие разработчикам и SRE максимально эффективно использовать автоматизированные инструменты наблюдаемости, доступные в Ключ-АСТРОМ, для более удобного устранения неполадок и аналитики.
Сценарий
SRE выполняет проактивную проверку работоспособности и производительности приложений, работающих в обслуживаемом кластере, и узнаёт об ошибках в логах, вызванных другим компонентом.
Предварительные требования
Убедитесь, что все перечисленные условия выполнены, прежде чем начать:
- Загрузка логов в Kubernetes.
- Логи обогащены TraceId.
- Знание приложения Kubernetes.
- Убедитесь, что включены следующие разрешения:
storage:logs:read. Инструкции см. в разделе Настройка разрешений для логов. Чтобы получить доступ к разрешениям, перейдите в меню Настройки в правом верхнем углу приложения Workflows и выберите Настройки авторизации.
- У вас должны быть необходимые разрешения для настройки и доступа к инструментам мониторинга в Ключ-АСТРОМ.
- У вас должны быть разрешения на загрузку данных логов в Ключ-АСТРОМ.
- Вы можете интегрировать Ключ-АСТРОМ с различными инструментами и фреймворками отслеживания ошибок, используемыми в вашем пайплайне.
Шаги
- Перейдите в приложение Kubernetes: в главном меню перейдите в Приложения > Наблюдаемость приложений > Kubernetes.
- Перейдите в раздел Рабочие нагрузки.
- Выберите интересующую вас запись из списка рабочих нагрузок, для которой ИИ сообщил о проблемах.
- Откройте вкладку Логи, чтобы получить обзор распределения логов для выбранной рабочей нагрузки.
- Если вы заметили ошибки на графике, выберите Показать ошибки в разделе Запустить рекомендуемые запросы. Для записей, у которых есть Проблема, можно выбрать Показать логи для проблемы, чтобы увидеть причины.
- Выберите запись лога, чтобы просмотреть подробности ошибки.
- Необязательно: выберите Показать окружающие логи, чтобы собрать больше информации о причине ошибки, если вы не нашли то, что искали, и хотите расширить расследование. Все логи в результатах декорированы одинаковым
trace_id. Либо можно перейти к другой интересующей вас рабочей нагрузке. - Необязательно: поделитесь результатами расследования с членами команды: вернувшись на экран логов, откройте логи в Блокнотах: выберите кнопку с многоточием и выберите Открыть с помощью > Блокноты. Здесь также можно поделиться блокнотом с логами с вашей командой: выберите Поделиться, выберите получателей и поделитесь блокнотом.
Заключение
Благодаря комбинации подробных логов с информацией о трассировках и чёткому пониманию топологии системы теперь гораздо быстрее устранять неполадки распределённых приложений. Это означает меньше времени, потраченного на поиск первопричины проблем, и больше времени, сосредоточенного на бесперебойной работе ваших приложений. С этими знаниями разработчики и инженеры по надёжности могут быстрее решать проблемы, что приводит к улучшению пользовательского опыта и более плавной работе в целом.