4

我需要监控 java 应用程序,我正在使用 javamelody。

但问题是,我必须获取 javamelody 拥有的数据,以便在另一个屏幕上显示它。我知道 javamelody 将其 rdd 文件存储在 temp/javamelody 目录中,现在我需要将存储目录更改为另一个路径,以便我可以从该路径获取数据。

如何设置 javamelody 的存储目录?

4

4 回答 4

5

哦,我想我已经找到了答案,我只需要像这样在我的 tomcat 中设置命令行或 xml 文件

<?xml version="1.0" encoding="UTF-8" ?>
<Context docBase="pathto\appname.war" path="javamelody" reloadable="false" >
        <Parameter name='javamelody.storage-directory' value='pathname' override='false'/>
</Context>

谢谢你的帮助:D

于 2013-06-13T05:46:57.760 回答
1

在 web.xml 中,使用如下javamelody参数定义过滤器storage-directory

<filter>
    <filter-name>javamelody</filter-name>
    <filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
    <init-param>
        <param-name>storage-directory</param-name>
        <param-value>/path/to/the/storage/directory</param-value>
    </init-param>
</filter>

我使用 JavaMelody 1.60.0 版进行了测试。有关详细信息,请参阅JavaMelody 用户指南

于 2016-08-02T13:53:32.513 回答
1

对于javamelody-spring-boot-starter

 javamelody.init-parameters.storage-directory=/tmp/javamelody-${spring.application.name}
于 2021-01-20T19:12:07.310 回答
0

对于春季启动

public class JavaMelodyConfiguration implements ServletContextInitializer {

@Value(value="${javamelody.storage-directory}")
String jmStorageDir;

@Override
public void onStartup(ServletContext servletContext) throws ServletException {
    servletContext.addListener(new SessionListener());
    servletContext.setInitParameter("javamelody.storage-directory", jmStorageDir);
}

然后你可以在 application.properties 中设置 javamelody.storage-directory

于 2016-06-30T18:54:30.957 回答