Mesos java 应用监控

Mesos java Application Monitoring

我是 运行 Mesos 和 Marathon 上的 java 应用程序。我如何监控 java 进程的堆统计信息?我尝试了 jstat,它抱怨 "pid not found",但过程是 运行,我可以通过 'ps auwx' 检查它。这是因为 java 进程在 cgroup 中 运行 吗?如果是这样,我们如何监控基于 mesos 的应用程序。

监控应用程序的最佳选择是发布它本身的指标。有很多方法可以从专有性开始向您的应用程序添加监控,例如 NewRelic or DataDog to opensource Prometheus.

如果您需要通过 JMX 获取访问权限,您可以使用以下配置公开此端口:

-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.local.only=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.port=$PORT1 \
-Djava.rmi.server.hostname=$MESOS_HOSTNAME

以上配置假设您有两个端口,第二个端口专用于 JMX