0

我有一个在 tomcat8 中运行的 java 应用程序,并将 jolokia.jar 作为 Catalina_opts 的 java 代理选项之一。现在我希望在这个 catalina_opts 中添加一个指标收集器。我怎样才能添加它?

当前 Catalina_opts CATALINA_OPTS="$CATALINA_OPTS $CATALINA_OPTS_APPEND -javaagent:$JWS_HOME/lib/jolokia.jar=port=xxxx,protocol=https,clientPrincipal=cn=system:masterproxy,useSslClientAuthentication=true,extraClientCheck=true,host=0.0.0.0,discoveryEnabled=false"

我想要的是 CATALINA_OPTS="$CATALINA_OPTS $CATALINA_OPTS_APPEND -javaagent:$JWS_HOME/lib/jolokia.jar=port=xxxx,protocol=https,clientPrincipal=cn=system:masterproxy,useSslClientAuthentication=true,extraClientCheck=true,host=0.0.0.0,discoveryEnabled=false -javaagent:./jmx-0.9.jar=1234:config.yaml"

我不确定我们是否可以使用多个 java 代理。如果是这样,任何人都可以指出我如何包含多个 java 代理

4

2 回答 2

3

你可以。只需添加多个参数,每个参数指定一个代理。代理按照它们在命令行中指定的顺序被激活:

java -javaagent:foo.jar=arg1 -javaagent:bar.jar=arg2 ...

JAVA_OPTS或者CATALINE_OPTS只是在命令行上指定某些内容的替代方法。

于 2017-04-07T07:18:13.660 回答
0

如果您正在寻找一个组合的 Jolokia 和 Prometheus 的 jmx_exporter,您可能想看看agent-bond,一个将多个代理合并为一个的超级代理。目前,仅支持 Jolokia 和 jmx_exporter,但可以轻松添加其他代理。

这种组合方法的优点是您只需要处理单个代理 jar 和更简单的命令行配置。

于 2017-05-22T20:15:48.490 回答