snmp自动发trap的实现

原创 2012年03月28日 17:33:13

snmp自动发trap

 

/*
 * Note: this file originally auto-generated by mib2c using
 *        : mib2c.notify.conf 17838 2009-11-25 20:35:23Z magfr $
 */

#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-includes.h>
#include <net-snmp/agent/net-snmp-agent-includes.h>
#include <net-snmp/agent/snmp_agent.h>
#include "fm200_notification.h"

extern const oid snmptrap_oid[];
extern const size_t snmptrap_oid_len;
 int content = 3;

int send_XXX_trap( int i_num_index )
{
    netsnmp_variable_list  *var_list = NULL;
    oid XXX_oid[] = { 1,3,6,1,4,1,11161,2,0,26 };
    oid XXXA_oid[] = { 1,3,6,1,4,1,11161,2,5,1,2,1,2,0 /* insert index here */ };
    size_t XXXA_oid_len = OID_LENGTH(XXXA_oid);
    XXXA_oid[XXXA_oid_len - 1] = i_num_index + 1;

    /*
     * Set the snmpTrapOid.0 value
     */

    snmp_varlist_add_variable(&var_list,
        snmptrap_oid, snmptrap_oid_len,
        ASN_OBJECT_ID,
        XXX_oid, sizeof(XXX_oid));

    /*
     * Add any objects from the trap definition
     */
    snmp_varlist_add_variable(&var_list,
        XXXA_oid, OID_LENGTH(XXXA_oid),
        ASN_INTEGER,
        /* Set an appropriate value for XXXA*/
       &content, sizeof(int));

    /*
     * Add any extra (optional) objects here
     */

    /*
     * Send the trap to the list of configured destinations
     *  and clean up
     */


    send_v2trap( var_list );
    snmp_free_varbind( var_list );

    return SNMP_ERR_NOERROR;
}

int send_YYY_trap(int i_num_index)
{
    netsnmp_variable_list  *var_list = NULL;
     oid YYY_oid[] = { 1,3,6,1,4,1,11161,2,0,27 };
     oid YYYA_oid[] = { 1,3,6,1,4,1,11161,2,5,1,2,1,3,0 /* insert index here */ };
     size_t YYYA_oid_len = OID_LENGTH(YYYA_oid);
     YYYA_oid[YYYA_oid_len - 1] = i_num_index + 1;

    /*
     * Set the snmpTrapOid.0 value
     */
    snmp_varlist_add_variable(&var_list,
        snmptrap_oid, snmptrap_oid_len,
        ASN_OBJECT_ID,
        YYY_oid, sizeof(YYY_oid));
   
    /*
     * Add any objects from the trap definition
     */
    snmp_varlist_add_variable(&var_list,
        YYYA_oid, OID_LENGTH(YYYA_oid),
        ASN_INTEGER,
        /* Set an appropriate value for YYYA*/
        &content, sizeof(int));

    /*
     * Add any extra (optional) objects here
     */
    /*
     * Send the trap to the list of configured destinations
     *  and clean up
     */
    send_v2trap( var_list );
    snmp_free_varbind( var_list );

    return SNMP_ERR_NOERROR;
}


 然后在初始化init_XXX_notification()

最后要把snmpd.conf的文件配置好,向那发trap,就写好改IP,实际情况还是要根据项目来定发trap的条件。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

net-snmp trap实现小结

trap终于实现了,哈哈。。。总结了以下几点:1. 在该代理中系统自带一些trap,有coldstart、warmstart、linkdown、linkup、shutdown,这些我不知道全不全。当开...

SNMP Trap

trap是某种入口,到达该入口会使SNMP被管设备主动通知SNMP管理器,而不是等待SNMP管理器的再次轮询。在网管系统中,被管设备中的代理可以在任何时候向网络管理工作站报告错误情况,例如预制定阈值越...

snmptrap的使用方法

SNMPTRAP格式snmptrap enterpriseOID(generic OID) OID(subOID) type valueThe TYPE is a single character...

使用snmp4j实现trap告警

使用snmp4j实现trap告警 Snmp4j的trap处理的文章在网上看了一些不过都是浅尝辄止,基本都是大概的讲述了一下如何接收trap等简单的技术。但是这些对于企业级的开发往往是不够的,随着纳入...

snmp4j 实现 trap监听

snmp4j 实现 trap监听代码可实现基本的trap监听,仅供参考。

SNMP4J实现SNMP TRAP

近期项目和华为的接口有要求用SNMP做实时告警的上送,在网上查找了些资料,整理了下 SNMP分为:SNMP TRAP\SNMP GET\SNMP SET      1.SNMP TRAP简单说一般就是...

C#SNMP_TRAP举例

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)