NRPE协议描述

时间:2014-01-10 08:56:15

标签: java network-protocols nagios nrpe jnrpe

我需要远程查询来自Java应用程序的nrpe nagios服务器,就像 check_nrpe 那样:

check_nrpe -H 192.***.***.*** -p 56** -c "check_load"

当我说“来自Java应用程序”时,我的意思是我希望在我的Java应用程序中接收和处理结果。我的第一个想法是从我的应用程序调用“check_nrpe”命令并检索其输出和返回值,但我想要一个独立的解决方案,其中没有外部程序被调用。

我不需要等待状态更改,只需最终检查监视器状态。由于我无法找到任何Java库(我应该尝试JNRPE吗?),我想实现协议 check_nrpe nrpe 守护程序用于通信。

你们之前有没有尝过这个?在这种情况下,你有这个协议的描述吗?

如果您的答案是否定的,我会尝试使用whireshark来分析协议,但任何线索都会非常感激。

1 个答案:

答案 0 :(得分:1)

Andreas Marschke博客对{NR}协议的解释,The NRPE Protocol explainedgitHub也是如此)

无论如何,JNRPE有完整的协议实施方案,您可以下载jcheck_nrpe-2.0.3-RC5源代码,并查看jcheck_nrpe-2.0.3-RC5\src\main\java\it\jnrpe\client\JNRPEClient.java课程,了解使用该示例的客户jnrpe-lib-1.0.1-RC5

jnrpe-lib有两个具体的类来实现协议请求和响应

  • JNRPERequest.java
  • JNRPEResponse.java

可以在jnrpe-lib-1.0.1-RC5\src\main\java\it\jnrpe\net\文件夹

中找到完整的协议实现类