Как собрать журналы из нескольких рабочих мест Jenkins \ Pipelines в одном месте? - PullRequest
0 голосов
/ 11 апреля 2019

Наш проект отвечает за перенос данных из одной системы в другую.Мы собираемся запустить сценарии преобразования, проверки и миграции с использованием Jenkins.

Мне неясно, как объединять журналы из нескольких заданий или конвейеров в Jenkins.Как это можно сделать?

Мы будем в значительной степени полагаться на журналы, чтобы определить любые проблемы, обнаруженные во время проверки и т. Д.

С точки зрения нашей запланированной установки у нас будут экземпляры AWS EC2 + мы можемиспользовать Datadog (наша компания использует его).Можем ли мы использовать Datadog для этой цели?

1 Ответ

1 голос
/ 13 апреля 2019

Вы можете сослаться на этот документ , чтобы узнать, где находится путь ведения журнала по умолчанию для Jenkins в зависимости от вашей ОС.(Для linux это /var/log/jenkins/jenkins.log, если вы не настроите его как что-то еще.

Тогда, пока ваш агент Datadog равен v6 +, вы можете использовать агент Datadog для хвоста вашегофайл jenkins.log, следуя этому документу .

В частности, вы добавите эту строку в dadatod.yaml:

logs_enabled: true

и добавите этот контент в любойстарый conf.yaml файл, вложенный в вашу директорию conf.d/, например, conf.d/jenkins.d/conf.yaml:

logs:
  - type: file
    path: /var/log/jenkins/jenkins.log
    service: jenkins
    source: jenkins

Затем агент подключит ваш файл журнала, как он записан, и перенаправит его в вашу учетную запись Datadog, чтобывы можете запросить, построить график и отслеживать данные вашего журнала там.

Получив входящие журналы, вы можете написать конвейер обработки , чтобы проанализировать критические атрибуты,но это будет материал для нового вопроса :).

...