从 Java 应用程序记录到 ELK,无需解析日志
我想将日志从Java应用程序发送到ElasticSearch,传统的方法似乎是在运行该应用程序的服务器上设置Logstash,并让logstash解析日志文件(使用正则表达式...!)并将其加载到ElasticSearch中。
这样做是有原因的,而不仅仅是设置log4J(或logback)以所需的格式将内容直接记录到日志收集器中,然后可以异步发送到ElasticSearch?对我来说,当应用程序本身可以首先记录所需的格式时,不得不摆弄grok过滤器来处理多行堆栈跟踪(并在日志解析时刻录CPU周期)似乎很疯狂?
与此相关的是,对于在 Docker 容器中运行的应用,考虑到只需要运行一个进程,那么直接登录到 ElasticSearch 的最佳实践是否是?