gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 16:46:00 24 4
gpt4 key购买 nike

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

我看到在.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做到这一点?

最佳答案

如果我的问题是对的,那么您需要执行以下操作:

  • 仅记录来自不同查询的每个elasticsearch查询(而不记录响应)
    微服务。
  • 您只需要在测试集群上使用它即可。

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

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

    关于java - 适用于Java的Elastic Search自定义记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59941809/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com