Как настроить AWS cloudWatchAgent для рекурсивного сбора журналов из папки на экземпляре EC2?

У меня есть каталог logs на экземпляре EC2 и там работает агент облачных наблюдений. В файле конфигурации агента CloudWatch я указал детали файла журнала, как показано ниже.

"logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/home/ec2-user/logs/**/*",
            "log_group_name": "test0",
            "log_stream_name": "{instance_id}"
          }
        ]
      }
    }
  }

но это не рекурсивный сбор журналов. Я хочу, чтобы облачный агент отправлял все журналы, находящиеся в одном каталоге (с вложенными каталогами), в журналы облачного наблюдения. Как такое возможно?




Ответы (1)


Первый ** подстановочный знак - это все, что вам нужно для получения всех журналов во всех подкаталогах:

"file_path": "/home/ec2-user/logs/**",

В качестве альтернативы вы можете выбрать определенный файл журнала во всех подкаталогах с помощью:

"file_path": "/home/ec2-user/logs/**/mylogfile.log",

Похоже, что дополнительная подстановка * в конце вашего file_path вызывает проблему.

person Patrick    schedule 28.11.2019