0

我已在 WebSphere Liberty 中成功设置 APM 代理,并且 APM 服务器成功接收日志。以下是我的配置。由于 WebSphere 上运行着多个应用程序,因此 Kibana 上的 APM 服务器显示来自所有应用程序的数据。我找不到在提供的 APM 仪表板上过滤掉应用程序的方法。我已将要监视的应用程序的包名称添加为Delastic.apm.application_packages,但它似乎没有起到作用。有没有办法在 APM 代理级别或仪表板级别过滤掉要监控的特定应用程序?

-javaagent:/path/to/apm/agent/jar/elastic-apm-agent-1.27.0.jar
-Delastic.apm.service_name=somename
-Delastic.apm.application_packages=packagename.of.javaapp
-Delastic.apm.server_url=http://apmserverIp:port
4

1 回答 1

0

为了过滤掉 Kibana 中的日志,建议您的 WebSphere Liberty 日志采用 JSON 格式。通过在 bootstrap.properties 文件中设置以下属性,可以将日志设置为 JSON 格式:

com.ibm.ws.logging.message.format=json
com.ibm.ws.logging.message.source=message,trace,accessLog,ffdc,audit

一旦日志采用 JSON 格式,在 Kibana 中,每个日志条目将被解析为单独的 JSON 字段,您可以在其中使用这些字段进一步过滤您的日志。要过滤掉特定的应用程序日志,您可以使用该module字段(即日志记录中的 Logger 名称)来匹配您的应用程序的 Logger 名称。您还可以使用ibm_methodNameibm_className字段按应用程序的方法或类名进行过滤。

有关可用字段的更多信息,请参阅以下文档: https ://openliberty.io/docs/21.0.0.11/json-log-events-list.html https://openliberty.io/docs/21.0。 0.11/log-management.html

有关使用 Elastic Stack 分析 JSON 日志的指南: https ://openliberty.io/docs/21.0.0.11/analyzing-logs-elk.html

于 2021-12-08T15:23:37.660 回答