c ++如何使用snmp-net将值写入OID

时间:2012-08-27 13:22:32

标签: snmp net-snmp

我遵循此tutorial。 我成功完成所有工作,但我无法弄清楚如何从我的应用程序中更改MIB标量值。

我想将应用程序中的值写入这些OID,以便能够通过SNMP监视我的应用程序。

本教程将向您展示如何注册OID并为其设置值,但如何根据应用程序状态更改应用程序中的值?

我的目标: 我有自己的应用程序(简单的业务应用程序)在Ubuntu机器上运行。 我通过SNMP从远程客户端监控主机。我监视像CPU,RAM这样的东西..我通过发送snmp-get到这些OID来做到这一点。

作为托管监控的一部分,我也希望监控我的应用程序(例如request_quoue_size),所以我认为这样做的方法是编写我自己的MIB模块并在我的应用程序上编写调用来设置此OID,我现在正在寻找如何调用set(c ++),如果这样的话。

1 个答案:

答案 0 :(得分:3)

首先,MIB只是一个接口(它指定了可从MIB模块访问的所有OID)。您的应用程序是SNMP代理还是SNMP使用者?

如果您在SNMP代理中,那么我假设您可以直接访问OID所在的内存。那么,你的问题到底是什么?

如果您在SNMP客户端内,则需要使用正确的UDP数据包向代理发送snmp-set请求...

请添加一些有关您要实现的目标的详细信息。