new version-alarm lincense
This commit is contained in:
@@ -75,9 +75,30 @@
|
|||||||
"Description."
|
"Description."
|
||||||
::= { msc 1 }
|
::= { msc 1 }
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.1.99
|
||||||
|
control OBJECT IDENTIFIER ::= { msc 99 }
|
||||||
|
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.1.99.2
|
||||||
|
neSystem OBJECT IDENTIFIER ::= { control 2 }
|
||||||
|
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.1.99.2.1
|
||||||
|
config OBJECT IDENTIFIER ::= { neSystem 1 }
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.1.99.2.1.2
|
||||||
|
licenseUpdate OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString
|
||||||
|
MAX-ACCESS read-write
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Description."
|
||||||
|
::= { config 2 }
|
||||||
|
|
||||||
|
|
||||||
-- 1.3.6.1.4.1.1373.1.3.3.2.2
|
-- 1.3.6.1.4.1.1373.1.3.3.2.2
|
||||||
-- 1.3.6.1.4.1.1373.2.3.3.1.2
|
-- 1.3.6.1.4.1.1373.2.3.3.1.2
|
||||||
|
|
||||||
parameter OBJECT IDENTIFIER ::= { msc 2 }
|
parameter OBJECT IDENTIFIER ::= { msc 2 }
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -71,7 +71,26 @@
|
|||||||
"Description."
|
"Description."
|
||||||
::= { pps 1 }
|
::= { pps 1 }
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.6.99
|
||||||
|
control OBJECT IDENTIFIER ::= { pps 99 }
|
||||||
|
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.6.99.2
|
||||||
|
neSystem OBJECT IDENTIFIER ::= { control 2 }
|
||||||
|
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.6.99.2.1
|
||||||
|
config OBJECT IDENTIFIER ::= { neSystem 1 }
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.6.99.2.1.2
|
||||||
|
licenseUpdate OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString
|
||||||
|
MAX-ACCESS read-write
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Description."
|
||||||
|
::= { config 2 }
|
||||||
|
|
||||||
-- 1.3.6.1.4.1.1373.1.3.3.2.2
|
-- 1.3.6.1.4.1.1373.1.3.3.2.2
|
||||||
-- 1.3.6.1.4.1.1373.2.3.3.6.2
|
-- 1.3.6.1.4.1.1373.2.3.3.6.2
|
||||||
parameter OBJECT IDENTIFIER ::= { pps 2 }
|
parameter OBJECT IDENTIFIER ::= { pps 2 }
|
||||||
|
|||||||
@@ -74,6 +74,26 @@
|
|||||||
"Description."
|
"Description."
|
||||||
::= { smsc 1 }
|
::= { smsc 1 }
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.5.99
|
||||||
|
control OBJECT IDENTIFIER ::= { smsc 99 }
|
||||||
|
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.5.99.2
|
||||||
|
neSystem OBJECT IDENTIFIER ::= { control 2 }
|
||||||
|
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.5.99.2.1
|
||||||
|
config OBJECT IDENTIFIER ::= { neSystem 1 }
|
||||||
|
|
||||||
|
-- 1.3.6.1.4.1.1373.2.3.3.5.99.2.1.2
|
||||||
|
licenseUpdate OBJECT-TYPE
|
||||||
|
SYNTAX DisplayString
|
||||||
|
MAX-ACCESS read-write
|
||||||
|
STATUS current
|
||||||
|
DESCRIPTION
|
||||||
|
"Description."
|
||||||
|
::= { config 2 }
|
||||||
|
|
||||||
|
|
||||||
-- 1.3.6.1.4.1.1373.1.3.3.2.2
|
-- 1.3.6.1.4.1.1373.1.3.3.2.2
|
||||||
-- 1.3.6.1.4.1.1373.2.3.3.5.2
|
-- 1.3.6.1.4.1.1373.2.3.3.5.2
|
||||||
|
|||||||
@@ -10,6 +10,8 @@ BYTE parseoid(char *str, DWORD * array, BYTE max);
|
|||||||
char *oidtostr(DWORD* oid,int oidlen,char *output);
|
char *oidtostr(DWORD* oid,int oidlen,char *output);
|
||||||
|
|
||||||
static char beatproc_sqlstr[8192];
|
static char beatproc_sqlstr[8192];
|
||||||
|
static char beatprocInfo_sqlstr[8192];
|
||||||
|
|
||||||
static char state_str[MAX_MSG_LEN];
|
static char state_str[MAX_MSG_LEN];
|
||||||
static _sys_conf sys_conf[MAX_SYS_CONF];
|
static _sys_conf sys_conf[MAX_SYS_CONF];
|
||||||
static int sys_conf_count=0;
|
static int sys_conf_count=0;
|
||||||
@@ -362,7 +364,26 @@ void localBeatRecv(BYTE oidLen, DWORD *oidArr, BYTE *pdata,WORD dataLen,snmp_add
|
|||||||
}
|
}
|
||||||
mysql_close(pubConn);
|
mysql_close(pubConn);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
else if(clearMode == 2)
|
||||||
|
{//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>澯
|
||||||
|
|
||||||
|
sprintf(beatproc_sqlstr,
|
||||||
|
"INSERT INTO sysAlarmEvent (sysTypeNo, sysNo, subSysNo, compCode, alarmCode, alarmTime, clearTime, clearMode, alarmId, alarmInfo) "
|
||||||
|
"VALUES (%d, %d, %d, %d, %d, '%s', '0000-00-00 00:00:00', 2, '%s', '%s');",
|
||||||
|
psysconf->systypeno, sysno, subsysno, compCode, alarmCode, alarmTimeStr, alarmIdStr, alarmInfo);
|
||||||
|
|
||||||
|
if (mysql_getnores(pubConn, beatproc_sqlstr) != 0)
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE, "[SQL ERR], %s", beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE, "Event alarm inserted: %s", beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
mysql_close(pubConn);
|
||||||
|
return;
|
||||||
|
}
|
||||||
} //end if .8
|
} //end if .8
|
||||||
else{
|
else{
|
||||||
//another omc
|
//another omc
|
||||||
@@ -523,6 +544,17 @@ void update_state(_sys_conf *psysconf,int sysNo,int subSysNo,BYTE *pdata,int dat
|
|||||||
{
|
{
|
||||||
ems_debug(BEATPROC_DEBUG_LOGFILE,"%s",beatproc_sqlstr);
|
ems_debug(BEATPROC_DEBUG_LOGFILE,"%s",beatproc_sqlstr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sprintf(beatproc_sqlstr,"update OMC_PUB.sysAlarmInfo set clearTime=CURRENT_TIMESTAMP,clearMode=0,clearBy='System' where sysTypeNo=%d and sysNo=%d and subSysNo=%d and compCode=0 and alarmCode=254;",
|
||||||
|
psysconf->systypeno,sysNo,subSysNo);
|
||||||
|
if(mysql_getnores(pubConn,beatproc_sqlstr) != 0)
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE,"[SQL ERR],%s",beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE,"%s",beatproc_sqlstr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mysql_close(pubConn);
|
mysql_close(pubConn);
|
||||||
@@ -696,6 +728,39 @@ void update_alarm(_sys_conf *psysconf,int sysno,int subsysno,int compcode,int al
|
|||||||
{
|
{
|
||||||
ems_debug(BEATPROC_DEBUG_LOGFILE,"%s",beatproc_sqlstr);
|
ems_debug(BEATPROC_DEBUG_LOGFILE,"%s",beatproc_sqlstr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// <20><><EFBFBD><EFBFBD> alarmCode Ϊ 254 ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD>뵽 alarmInfo <20><>
|
||||||
|
if (alarmcode == 254)
|
||||||
|
{
|
||||||
|
|
||||||
|
sprintf(beatproc_sqlstr,"update OMC_PUB.sysAlarmInfo set clearTime=CURRENT_TIMESTAMP,clearMode=0,clearBy='System' where sysTypeNo=%d and sysNo=%d and subSysNo=%d and compCode=0 and alarmCode=254;",
|
||||||
|
psysconf->systypeno,sysno,subsysno);
|
||||||
|
if(mysql_getnores(pubConn,beatproc_sqlstr) != 0)
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE,"[SQL ERR],%s",beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE,"%s",beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
time_t current_time = time(NULL);
|
||||||
|
char alarmIdStr[32];
|
||||||
|
sprintf(alarmIdStr, "%ld", (long)current_time); // <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>Ϊ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
|
||||||
|
|
||||||
|
sprintf(beatproc_sqlstr, "insert into OMC_PUB.sysAlarmInfo(sysTypeNo,sysNo,subSysNo,compCode,alarmCode,alarmTime,clearTime,clearMode,alarmInfo,alarmId) "
|
||||||
|
"values(%d,%d,%d,%d,%d,CURRENT_TIMESTAMP,'0000-00-00 00:00:00',1,'Can not receive heartbeat','%s');",
|
||||||
|
psysconf->systypeno, sysno, subsysno, compcode, alarmcode,alarmIdStr);
|
||||||
|
if (mysql_getnores(pubConn, beatproc_sqlstr) != 0)
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE, "[SQL ERR],%s", beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ems_debug(BEATPROC_DEBUG_LOGFILE, "Inserted into alarmInfo: %s", beatproc_sqlstr);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
psys->lastcompcode=compcode;
|
psys->lastcompcode=compcode;
|
||||||
|
|||||||
@@ -12,6 +12,8 @@ int getOmcSysNo(int* sysNo);
|
|||||||
int getOmcStatus(int sysNo);
|
int getOmcStatus(int sysNo);
|
||||||
int omcSysNo=-1;
|
int omcSysNo=-1;
|
||||||
|
|
||||||
|
static char cstaproc_sqlstr[8192];
|
||||||
|
|
||||||
/*
|
/*
|
||||||
return:
|
return:
|
||||||
TIMETO_NONE
|
TIMETO_NONE
|
||||||
@@ -1145,7 +1147,7 @@ int csta_record(csta_src *pcsta,csta_sys *psys,snmp_pdu *pdu)
|
|||||||
{
|
{
|
||||||
csta_obj *pobj;
|
csta_obj *pobj;
|
||||||
var_list *pvar;
|
var_list *pvar;
|
||||||
DWORD d_timestamp,*p_long;
|
DWORD d_timestamp,*p_long;
|
||||||
DWORD *pval4;
|
DWORD *pval4;
|
||||||
WORD *pval2;
|
WORD *pval2;
|
||||||
char sqlstr[8192],sumsqlstr[8192],sumCondition[512],sumFieldList[8192];
|
char sqlstr[8192],sumsqlstr[8192],sumCondition[512],sumFieldList[8192];
|
||||||
@@ -1227,6 +1229,7 @@ int csta_record(csta_src *pcsta,csta_sys *psys,snmp_pdu *pdu)
|
|||||||
sprintf(tmpstr3," and %s=%d",pobj->id1_field,psys->pre_id1 + pobj->id1_offset);
|
sprintf(tmpstr3," and %s=%d",pobj->id1_field,psys->pre_id1 + pobj->id1_offset);
|
||||||
strcat(sumCondition,tmpstr3);
|
strcat(sumCondition,tmpstr3);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
sprintf(key_field,"%s,%s,",pobj->id1_field, pobj->id2_field);
|
sprintf(key_field,"%s,%s,",pobj->id1_field, pobj->id2_field);
|
||||||
@@ -1236,6 +1239,7 @@ int csta_record(csta_src *pcsta,csta_sys *psys,snmp_pdu *pdu)
|
|||||||
sprintf(tmpstr3," and %s=%d and %s=%d",pobj->id1_field,psys->pre_id1 + pobj->id1_offset,pobj->id2_field,psys->pre_id2 + pobj->id2_offset);
|
sprintf(tmpstr3," and %s=%d and %s=%d",pobj->id1_field,psys->pre_id1 + pobj->id1_offset,pobj->id2_field,psys->pre_id2 + pobj->id2_offset);
|
||||||
strcat(sumCondition,tmpstr3);
|
strcat(sumCondition,tmpstr3);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//csta_log("single_message_flag:%d",pcsta->single_message_flag);
|
//csta_log("single_message_flag:%d",pcsta->single_message_flag);
|
||||||
@@ -1243,13 +1247,14 @@ int csta_record(csta_src *pcsta,csta_sys *psys,snmp_pdu *pdu)
|
|||||||
{
|
{
|
||||||
sprintf(sqlstr, "replace into %s.%sData (%s%s%s,csta_datetime)VALUES(%s%s",
|
sprintf(sqlstr, "replace into %s.%sData (%s%s%s,csta_datetime)VALUES(%s%s",
|
||||||
CSTA_DB,pobj->detail_table,sys_field,key_field,pobj->sql_detail,sys_value,key_value);
|
CSTA_DB,pobj->detail_table,sys_field,key_field,pobj->sql_detail,sys_value,key_value);
|
||||||
|
|
||||||
//sum up accord to the map table
|
//sum up accord to the map table
|
||||||
if(needSumFlag)
|
if(needSumFlag)
|
||||||
{
|
{
|
||||||
sprintf(tmpstr3," and UNIX_TIMESTAMP(csta_datetime) = %ld",d_timestamp);
|
sprintf(tmpstr3," and UNIX_TIMESTAMP(csta_datetime) = %ld",d_timestamp);
|
||||||
strcat(sumCondition,tmpstr3);
|
strcat(sumCondition,tmpstr3);
|
||||||
sprintf(sumsqlstr,"select %s from %s.%sData where %s",pobj->sql_sum,CSTA_DB,pobj->detail_table,sumCondition);
|
sprintf(sumsqlstr,"select %s from %s.%sData where %s",pobj->sql_sum,CSTA_DB,pobj->detail_table,sumCondition);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(pobj->field_width == 2)
|
if(pobj->field_width == 2)
|
||||||
@@ -1394,6 +1399,9 @@ int csta_record(csta_src *pcsta,csta_sys *psys,snmp_pdu *pdu)
|
|||||||
|
|
||||||
sprintf(sqlstr, "replace into %s.%sData (%s%s%scsta_datetime)VALUES(%s%s",
|
sprintf(sqlstr, "replace into %s.%sData (%s%s%scsta_datetime)VALUES(%s%s",
|
||||||
CSTA_DB,pobj->sum_table,sys_field,key_field,sumFieldList,sys_value,key_value);
|
CSTA_DB,pobj->sum_table,sys_field,key_field,sumFieldList,sys_value,key_value);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for(i=0;i<pobj->sum_field_count;i++)
|
for(i=0;i<pobj->sum_field_count;i++)
|
||||||
{
|
{
|
||||||
if(row[i] == NULL)
|
if(row[i] == NULL)
|
||||||
@@ -1412,7 +1420,56 @@ int csta_record(csta_src *pcsta,csta_sys *psys,snmp_pdu *pdu)
|
|||||||
}
|
}
|
||||||
sprintf(tmpstr3,"FROM_UNIXTIME(%ld))",d_timestamp);
|
sprintf(tmpstr3,"FROM_UNIXTIME(%ld))",d_timestamp);
|
||||||
strcat(sqlstr,tmpstr3);
|
strcat(sqlstr,tmpstr3);
|
||||||
|
|
||||||
|
//only 320 mscSumData.check Signal Error
|
||||||
|
if (pcsta->sysTypeNo == 320 && strcmp(pobj->sum_table, "mscSumData") == 0) {
|
||||||
|
|
||||||
|
int sysNo = psys->sysid; // <20><> psys <20><>ȡ sysNo
|
||||||
|
int subSysNo = psys->subsysid;
|
||||||
|
|
||||||
|
unsigned int SignalErr = 0, Attempt = 0 ,KeyType =0;
|
||||||
|
sscanf(sqlstr, "%*[^,],%*[^,],%u,%*[^,],%u,%*[^,],%u", &KeyType,&Attempt, &SignalErr);
|
||||||
|
|
||||||
|
// MO-12 MT-13
|
||||||
|
if (Attempt > 0 && (KeyType == 12 || KeyType == 13)) {
|
||||||
|
double ratio = (double)SignalErr / Attempt;
|
||||||
|
|
||||||
|
// <20><><EFBFBD><EFBFBD> SignalErr / Attempt > 5%<25><><EFBFBD><EFBFBD><F2B4A5B7>澯
|
||||||
|
if (ratio > 5.0) {
|
||||||
|
time_t current_time = time(NULL);
|
||||||
|
char alarmIdStr[32];
|
||||||
|
sprintf(alarmIdStr, "%ld", (long)current_time); // <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>Ϊ<EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
|
||||||
|
|
||||||
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> alarmInfo <20><><EFBFBD><EFBFBD> SQL <20><><EFBFBD><EFBFBD>
|
||||||
|
sprintf(cstaproc_sqlstr, "insert into OMC_PUB.sysAlarmInfo(sysTypeNo,sysNo,subSysNo,compCode,alarmCode,alarmTime,clearTime,clearMode,alarmInfo,alarmId) "
|
||||||
|
"values(%d,%d,%d,%d,%d,CURRENT_TIMESTAMP,'0000-00-00 00:00:00',1,'Call failure rate exceeds 5%%');",
|
||||||
|
pcsta->sysTypeNo,sysNo,subSysNo, 0, 10, alarmIdStr);
|
||||||
|
|
||||||
|
// ִ<><D6B4> SQL <20><><EFBFBD><EFBFBD>
|
||||||
|
if (mysql_getnores(pubConn, cstaproc_sqlstr) != 0) {
|
||||||
|
csta_log("[SQL ERR]: %s", cstaproc_sqlstr);
|
||||||
|
} else {
|
||||||
|
csta_log("Inserted into alarmInfo: %s", cstaproc_sqlstr);
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
//clear 5% alarm
|
||||||
|
sprintf(cstaproc_sqlstr, "update OMC_PUB.sysAlarmInfo set clearTime=CURRENT_TIMESTAMP,clearMode=0,clearBy='System' "
|
||||||
|
"where sysTypeNo=%d and sysNo=%d and subSysNo=%d and compCode=%d and alarmCode=%d and clearMode=1;",
|
||||||
|
pcsta->sysTypeNo, sysNo, subSysNo, 0, 10);
|
||||||
|
|
||||||
|
// ִ<><D6B4> SQL <20><><EFBFBD><EFBFBD>
|
||||||
|
if (mysql_getnores(pubConn, cstaproc_sqlstr) != 0) {
|
||||||
|
csta_log("[SQL ERR]: %s", cstaproc_sqlstr);
|
||||||
|
} else {
|
||||||
|
csta_log("Cleared alarmInfo: %s", cstaproc_sqlstr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
csta_log("Attempt is zero, skipping SignalErr/Attempt calculation.");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
if(mysql_getnores(pCstaConn,sqlstr) != 0)
|
if(mysql_getnores(pCstaConn,sqlstr) != 0)
|
||||||
{
|
{
|
||||||
if(mysql_errno(pCstaConn) == 1146)
|
if(mysql_errno(pCstaConn) == 1146)
|
||||||
|
|||||||
Reference in New Issue
Block a user