Tomcat memory information
我写了一个小测试程序,它查询tomcat 的状态servlet 并获取jvm 的内存信息(free,total,max)。有没有办法获得更多信息?
像CPU、进程的内存、系统内存等等。我知道其中一些东西可能会以某种方式获得,因为有一些工具(例如探针)可以获取更多信息。我想要实现的是构建一个我可以调用的 ant 任务(是否有更好的方法或已经准备好使用的东西?),暂时记录尽可能多的信息。任何信息/帮助将不胜感激。谢谢。
kukudas
您可以使用 JMX 进行大量操作,Tomcat 有一些关于如何启用 JMX 的文档,以及用于查询管理 bean 的 ant 任务。
在启用 JMX 后尝试将 jconsole 连接到 Tomcat,您可以从 GUI 浏览所有可用的管理信息。
您不能仅使用基础库来实现,但您可以使用 SIGAR API 获得您想要的一切,甚至更多。您可以获得的一些示例:
- 系统内存、交换、CPU、平均负载、正常运行时间、登录
- 每个进程的内存、cpu、凭据信息、状态、参数、环境、打开的文件
- 文件系统检测和指标
- 网络接口检测、配置信息和指标
- TCP 和 UDP 连接表
- 网络路由表