Я использую CoreOS, который использует systemd и docker.
Одна из больших проблем с systemd и CoreOS заключается в том, что он не на 100% хорошо работает с докером. Или, может быть, докер тоже не работает на 100% хорошо. Другая проблема, с которой я столкнулся, заключается в том, что события журнала, которые регистрируются в журнале, похоже, исходят из «докера», что неверно. Они исходят из процесса, который запускает докер. Обычно это не было бы большой проблемой, но когда вы перенаправляете эти журналы в другую службу, например стек ELK, вы не можете понять, что такое журналы nginx по сравнению с журналами других служб. Их источник - все докеры!
Есть ли способ обойти это? Я использую докер 1.9, который есть в CoreOS Stable. Поэтому у меня пока нет привилегии напрямую использовать вывод json из докера.
Все служебные файлы и контейнеры Docker вставляют данные в журнал systemd. Если событие было инициировано контейнером Docker, источник процесса регистрируется как Docker. Вы можете сообщить об ошибке Вот если вы считаете, что журналы должны отображаться по-другому.
Возвращаясь к вашему вопросу, рассматривали ли вы возможность пересылки журналов докеров в ELK вместо журналов systemd?