如何实现私有trap,如何关闭snmp agent服务?求解,求高手

stitchwillow 2012-02-08 03:03:55
用的还是net-snmp
1.用他的源码到底是怎么样关闭snmp agent服务的,我想调用他内部原有的接口,目前我关闭服务用的都是指令“pkill snmp”太暴力了。
2.私有trap到底是怎么实现的,我在网上找到一个trap的文件
TRAP-TEST-MIB.txt:
TRAP-TEST-MIB DEFINITIONS ::= BEGIN
IMPORTS ucdExperimental FROM UCD-SNMP-MIB;
demotraps OBJECT IDENTIFIER ::= { ucdExperimental 990 }
demo-trap TRAP-TYPE
STATUS current
ENTERPRISE demotraps
VARIABLES { sysLocation }
DESCRIPTION "This is just a demo"
::= 17
END
用mib2c -c mib2c.notify.conf demotraps生成demotraps.c和demotraps.h该如何修改才能够让他正常的发送trap,求高人指点。
...全文
361 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
stitchwillow 2012-02-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhang691753540 的回复:]
关闭agent服务 一般在包含main函数的原文件中都有一个变量;此变量来指示是否运行此服务,可以改变此变量来停止服务。


发送trap你可以参照一下net-snmp给你的例子,源码文件中
net-snmp-5.6.1.1\agent\mibgroup\examples\notification.cnotification.c 你的做法和给出的例子几乎一致,看一下就好了。
当然发送tr……
[/Quote]
notification.c里面的函数send_example_notification该怎么用,是直接用一个main函数调用这个接口吗,为什么这个函数的两个传入参数都没有使用到,为什么我用gdb跟踪进去里面的一个关键的全局变量sinks会为空导致发送不了trap
孤独小剑 2012-02-08
  • 打赏
  • 举报
回复
函数snmp_alarm_register(30, /* seconds */
SA_REPEAT, /* repeat (every 30 seconds). */
send_trap, /* our callback 定时器触发调用的函数*/
NULL /* no callback data needed 回调函数的返回值*/
);定义一个trap自陷检测的定时器。
函数send_v2trap发送
zhang691753540 2012-02-08
  • 打赏
  • 举报
回复
关闭agent服务 一般在包含main函数的原文件中都有一个变量;此变量来指示是否运行此服务,可以改变此变量来停止服务。


发送trap你可以参照一下net-snmp给你的例子,源码文件中
net-snmp-5.6.1.1\agent\mibgroup\examples\notification.cnotification.c 你的做法和给出的例子几乎一致,看一下就好了。
当然发送trap你也可以参照一下snmptrap.c这个文件,调用net-snmp接口自己组建session 组建pdu发送trap。


69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧