Log do aplicativo Java para o ELK sem a necessidade de analisar logs
Desejo enviar logs de um aplicativo Java para o ElasticSearch, e a abordagem convencional parece configurar o Logstash no servidor que está executando o aplicativo e fazer com que o logstash analise os arquivos de log (com regex ...!) E carregue-os no ElasticSearch .
Existe uma razão para isso ser feito dessa maneira, em vez de apenas configurar o log4J (ou logback) para registrar as coisas no formato desejado diretamente em um coletor de logs que pode ser enviado para o ElasticSearch de forma assíncrona? Parece uma loucura para mim ter que mexer nos filtros do grok para lidar com os rastreamentos de pilha de várias linhas (e gravar os ciclos da CPU na análise de log) quando o aplicativo em si pode simplesmente registrá-lo no formato desejado em primeiro lugar?
Em uma observação relacionada tangencialmente, para aplicativos executados em um contêiner do Docker, é uma prática recomendada fazer logon diretamente no ElasticSearch, dada a necessidade de executar apenas um processo?