0

我们想要监控我们的 tomcat 实例的 jvm 指标。我们认为 jolokia 是一个很好的解决方案,因为它有一个不错的 Nagios (checkMK) 插件。我想知道,如果我们使用 spring 代理选项,在我们的 pom.xml 中指定依赖项。

据我了解,这将在应用程序启动时启动代理。如果我们希望代理启动或不启动,是否可以在任何 tomcat 属性文件中指定?因为否则如果由于某种原因我们想要停止代理,除了重新部署应用程序之外别无他法?

4

1 回答 1

0

如果您按照此处所述将 Jolokia 集成到 Spring 应用程序上下文中,则可以直接或通过 Spring 属性将该选项设置autoStart为。false如果你systemPropertiesMode那么你甚至可以从外部属性设置它。

Tbh,我不确切知道 Spring Boot 在提供依赖项时如何在内部创建代理,但希望它公开相同的配置方式,就像您在应用程序上下文中自己声明代理一样。

作为替代方案,如果您要使用外部代理,您可以轻松地将 Jolokia 代理添加到 Tomcat 的启动选项中bin/setenv.sh。由于这是一个常规的 shell 脚本,您也可以在此处添加任何逻辑,并有条件地将 Jolokia 配置添加到您的变量中CATALINA_OPTS

if [ -n "$ENABLE_JOLOKIA" ]; then
   CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/jolokia-agent.jar"
fi

然后你可以ENABLE_JOLOKIA在启动tomcat之前设置环境变量。

于 2016-10-21T09:26:23.397 回答