gpt4 book ai didi

java - 是否可以检查 Tomcat 中的 .war 中正在运行的内容?

转载 作者:行者123 更新时间:2023-11-28 22:07:57 26 4
gpt4 key购买 nike

我有一个 Talend 进程,部署在 Tomcat 应用服务器的 .war 文件中。 .war 中有几个作业,它们使用与“http://server:port/TalendProject/method=runJob”非常相似的 get 请求调用。

没有 Talend 的商业许可证(目前使用 Open Studio)我没有任何方法来控制作业是否在执行过程中失败。

我知道我可以检查日志但不知道我正在使用的系统,我不能确定作业是否失败或仍在运行(例如在异常之后)。

我的问题是是否有任何方法可以监控 Tomcat 中正在运行的作业,也就是说,是否有任何方法可以显示正在运行的进程。

我的猜测,但我不确定是否没有办法,因为 Talend 作业正在运行,由 Talend .war,所以我唯一会看到的是调用此 .war 的 java,下面的所有内容都将被隐藏。

最佳答案

我对 Talend 一无所知,但我认为您可以使用 JConsole 或更好的 VisualVm 通过 JMX 监控您的 Tomcat 服务器代理人。为了监控任何 Java 应用程序(如 Tomcat),如果 tomcat 在本地主机上运行,​​您必须使用 -Dcom.sun.management.jmxremote 调用它。

如果Tomcat运行在另一台主机上,你至少需要配置端口JMX属性-Dcom.sun.management.jmxremote.port=XXXX

为了添加这些属性以运行 tomcat,您必须更改位于 $TOMACT_HOME\bin\catalina.sh$TOMACT_HOME\中的 CATALINA_OPTS 变量bin\catalina.bat 文件。

您有关于 Java JMX 代理监控的完整文档 here

通过这种方式,您可以监控线程、内存消耗、gc Activity 、进行分析、线程转储……也许它可以帮助您理解。

关于java - 是否可以检查 Tomcat 中的 .war 中正在运行的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32649279/

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