Мы начнем развертывать наши Java-приложения с помощью докера на AWS elasticbeanstalk, нам нужна централизованная регистрация и мы будем использовать стек ELK.
Я хотел бы сохранить один процесс для каждого контейнера, поэтому избегайте использования файловых битов, но для этого нам пришлось бы использовать другое приложение, такое как системный журнал или даже приложение tcp.
Мы не можем позволить себе потерять журналы.
Filebeat предоставляет логику повторного запуска из коробки, но добавление ее в микс увеличит сложность развертывания, потребуется убедиться, что filebeat получает сигнал SIGTERM, когда контейнеры завершаются, убедитесь, что он предварительно запечён в образ контейнера или в Dockerfile и т. д. .
Если мы пойдем по пути, используя приложение tcp или syslog, повторная попытка зависит от нас, и мы также хотим избежать сложности в нашем коде.
Каковы плюсы и минусы каждого подхода, помимо того, что я указал?
Наша библиотека журналов logback.