Я установил экземпляр EC2, используя ECS, который имеет 2 службы. Первая служба (служба FluentBit) создает задачу, на которой работает агрегатор FluentBit, который прослушивает / var / run / fluent.sock , записывая журналы в файл ( / var / logs / comblogs.log ) и работает как служба демона. Другая служба (user-service) создает задачу, которая имеет следующие экземпляры контейнера 1 nginx, 1 сервер redis, 3 узла приложения. Все эти экземпляры контейнеров имеют свободные драйверы регистрации для docker. Все они отправляют журналы на / var / run / fluent.sock .
На каждом узле приложения у меня работает NodeJS приложение, которое выполняет console.log, которое я хочу перенаправить на / var / run / fluent.sock
Теперь. Если я sh введу в экземпляр EC2, я смогу увидеть журналы в / var / logs / comblogs.log , но не журналы приложений, выполненные через console.log из NodeJs.
Я прочитал, что console.log отправляется на стандартный вывод, который должен быть перехвачен docker, и показывает журналы, захваченные приложением. Как отправить журналы из приложения в агрегатор FluentBit?