繁体   English   中英

用于 Java 的 Elastic Search 自定义记录器

[英]Elastic Search custom logger for Java

目前,我们有几个使用 Elastic Search 的 Java 微服务应用程序,出于调试目的,我们将日志记录设置为跟踪器。 这会将所有 ES 请求和响应输出到日志。 我们真的只需要请求,并且只需要非生产。 对于所有环境,我们希望保留搜索响应时间以及我们为跨多个微服务应用程序进行跟踪而设置的自定义标头。

我看到在 .NET 中有一个对我们来说非常适合的自定义解决方案: https : //www.elastic.co/guide/en/elasticsearch/client/net-api/current/logging-with-on-request- Completed.html#logging-with-on-request-completed但遗憾的是我似乎找不到匹配的 Java 功能。

有没有办法使用Java来做到这一点?

如果我的问题是正确的,那么您需要以下内容:-

  1. 仅记录来自不同微服务的每个 elasticsearch 查询(而不是响应)。
  2. 你只想要它在你的测试集群上

在 elastisearch 中有一个解决方法。 Elasticsearch 本身会记录对其进行的查询,您只需要为其设置一个阈值。 因此,任何比该阈值花费更多时间的查询都将记录在日志文件夹中的单独文件“ _slow_log. ”中。 您只需将阈值设置为“0”即可仅记录每个查询,并且这可以在您的特定用例的测试环境中完成。

其中有很多配置选项,建议您检查一下: https : //www.elastic.co/guide/en/elasticsearch/reference/current/index-modules-slowlog.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM