kubernetes - 将日志文件写入慢速磁盘或将 Tomcat 访问日志发送到 ElasticSearch?

标签 kubernetes tomcat logging logback

  • 我的服务 (tomcat/java) 正在 kubernetes 集群 (AKS) 上运行。
  • 我想将日志文件(tomcat 访问日志、带 logback 的应用程序日志)写入 AzureFile 卷。
  • 我不想将访问日志写入标准输出,因为我不想将访问日志与应用程序日志混合。

问题

我希望所有日志记录都是异步完成的,因此写入速度较慢的 AzureFile 卷不会影响性能。 这是正确的吗?

更新

最后我想收集日志文件,以便我可以将所有日志发送到 ElasticSearch。

特别是我需要一种收集访问日志的方法。

最佳答案

如果您想将访问日志发送到Elastic Search,您只需扩展 AbstractAccessLogValve并实现log方法。

AbstractAccessLogValve 已经包含格式化消息的逻辑,因此您只需添加发送格式化消息的逻辑即可。

关于kubernetes - 将日志文件写入慢速磁盘或将 Tomcat 访问日志发送到 ElasticSearch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69459624/

相关文章:

kubernetes - 如何根据 celery 任务队列中的任务数自动扩展 Kubernetes Pods?

java - 我必须关心 ThreadPoolExecutor 的关闭吗?

tomcat - 如何在intellij中配置tomcat

windows - 在 Windows 上存储应用程序日志文件的位置

java - 在资源文件夹中找不到 logback.xml

testing - 如何使用 Jest 或其他 Javascript 测试框架测试 console.log 输出?

kubernetes - K8s 上广告的 kafka 连接休息监听器

docker - 如何使用 docker compose 部署到 google-cloud?

ssl - Kubernetes 的 "system trust roots on the apiserver"定义中的 "caBundle"的 "WebhookClientConfig"是什么

java - 在 tomcat 服务器中运行的 J2ee 线程