捕获JMX事件和ELK堆栈以监视应用程序实时呼叫运行状况

时间:2018-06-25 04:28:00

标签: jmx elastic-stack

尝试使用JMX事件来监视应用程序实时调用。因此,只要与主机系统发生实时调用,并导致成功/失败,应用程序就会使用JMX资源生成事件。此事件正在捕获的信息不仅是成功/失败,而且还包括帐户,货币和金钱,时间戳记值。事件发生后,我可以使用jconsole看到MBean值。下一步是将这些事件吸收到elasticsearch中,并从收集到的这些事件数据中放置一个仪表板。我尝试使用logstash jmx插件,但是问题是

  1. 它以配置中设置的固定间隔轮询。所以如果 事件值未更改,那么它将再次读取相同的值,并且 再次。另一个问题是,如果之间有多个事件发生 轮询间隔,将无法捕获这些数据。
  2. 事件数据中的每个值都是一个属性,由 JMX插件不是将一组完整的值作为一个日志事件。

寻找解决方案来克服这一障碍。我能想到的一种方法是,将事件数据写入日志文件,并使用logstash文件输入插件读取该日志,但是与JMX相比,这将导致IO变慢。有没有办法仍然使用JMX来实现这一目标?

谢谢!

0 个答案:

没有答案