Эластичные бобовые стебли - PullRequest
0 голосов
/ 09 мая 2018

У меня есть среда Elastic Beanstalk на AWS, где я развертываюсь через контейнер Docker. Я включил журналы по умолчанию из конфигурации пользовательского интерфейса Beanstalk, и мы получаем стандартные журналы, такие как eb-activity.log в CloudWatch.

Моя цель - интегрировать пользовательский файл журнала: logger.log в CloudWatch.

Dockerrun.aws.json выглядит так:

{
  "AWSEBDockerrunVersion": "1",
  "Ports": [
    {
      "ContainerPort": "3000"
    }
  ],
  "Logging": "/path/to/logs"
}

Затем в .ebextensions / 01_cloudwatch.config У меня есть

files:
  /etc/awslogs/config/my_app_log.conf: 
    content: |
        [/var/log/eb-docker/containers/eb-current-app/logger.log]
        log_group_name=/aws/elasticbeanstalk/appname/var/log/eb-docker/containers/eb-current-app/logger.log
        log_stream_name={instance_id}
        file=/var/log/eb-docker/containers/eb-current-app/logger.log
    group: root
    mode: "000600"
    owner: root

eb-пользователь имеет полные разрешения CloudWatch (CloudWatchFullAccess и CloudWatchLogsFullAccess). Также я могу проверить наличие / var / log / eb-docker / container / eb-current-app / logger.log .

Тем не менее, журналы не отображаются в CloudWatch. В этом же каталоге находятся файлы afc818177506-stdouterr.log, которые появляются в CloudWatch, они настраиваются в /etc/awslogs/config/beanstalklogs.conf. Более того, я сделал sudo service awslogs restart .

Есть идеи, как отладить проблему, или вы видите очевидную ошибку, которую я сделал, чтобы logger.log не появился в CloudWatch? Большое спасибо!

PS. Я уже рассматривал подобные вопросы и потратил достаточно времени, чтобы решить проблему без успеха, поэтому вам нужна помощь.

1 Ответ

0 голосов
/ 14 мая 2018

В соответствии с часто задаваемыми вопросами об агенте Cloudwatch внизу эта ссылка , это общие причины, по которым события журнала не отправляются:

  1. размер журнала событий> 256K
  2. отметка времени записей журнала отключена (> 2 часа в будущем или> 2 недели в прошлом) - возможно, очистите файл журнала, если у вас устарелый logger.log
  3. журнал событий старше срока хранения
  4. большие партии бревен, охватывающие более 24 часов

Наконец, чтобы выяснить причину сбоя агента журнала cloudwatch, проверьте /var/log/awslogs.log и для устранения проблем агент был правильно установлен на экземпляре EC2, проверьте /var/log/awslogs-agent-setup.log

Посмотрите, поможет ли какой-либо из этих советов, и напишите, если вы все еще застряли с дополнительной информацией, и мы продолжим пытаться помочь вам.

...