⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tuxedo_func.c

📁 电信硬件的信息数据采集程序
💻 C
字号:
#include "tuxedo_func.h"/*******************************************************************************\| Name			: constructPutValues											|| Description	: construct put values for KPI           						|| Input Param	: 																|| Output Param	:																|| Author		: yangyong														|| History		: Sept.02.2003		yangyong		create						||																				||*******************************************************************************/void constructPutValues(char *pValue,struct KPIValue *pKPIValues){	struct KPIValue *temp = NULL;#ifdef MY_DEBUG	char FuncName[128] = {"constructPutValues"};	sprintf(DebugMsg,"constructPutValues Begin\n");	writeLog(FuncName,DebugMsg,DEBUG_MSG);#endif	temp = malloc(sizeof(struct KPIValue));	if(!temp) {#ifdef MY_DEBUG		sprintf(DebugMsg,"malloc memory failed\n");		writeLog(FuncName,DebugMsg,ERROR_MSG);#endif		return;	}	memset(temp,'\0',sizeof(struct KPIValue));	sprintf(temp->EntityID,"%s",pKPIValues->EntityID);	sprintf(temp->CollTime,"%s",pKPIValues->CollTime);	sprintf(temp->KPIID,"%s",pKPIValues->KPIID);	sprintf(temp->KPIValue,"%s",pValue);	temp->next = NULL;		pKPIValues->next = temp;	#ifdef MY_DEBUG	sprintf(DebugMsg,"constructPutValues End\n");	writeLog(FuncName,DebugMsg,DEBUG_MSG);#endif	return;}void printKPIValue(struct KPIValue *pKPIValues){	struct KPIValue *temp = NULL;	printf("\n====== KPIValues is:=========\n");	for(temp = pKPIValues;temp;temp=temp->next) {		printf("EntityID is: %s\n",temp->EntityID);		printf("CollTime is: %s\n",temp->CollTime);		printf("KPIID is: %s\n",temp->KPIID);		printf("KPIValue is: %s\n",temp->KPIValue);		printf("######-######-#####-######-#####\n\n");	}}/*******************************************************************************\| Name			: getTuxedoMibValue												|| Description	: get Tuxedo Mib Value            								|| Input Param	: 																|| Output Param	:																|| Author		: yangyong														|| History		: Sept.02.2003		yangyong		create						||																				||*******************************************************************************/int getTuxedoMibValue(char *pTaClassName,char *pTaAttrName,char *pMibValue){	FBFR32 *sendbuf = NULL, *rcvbuf = NULL;	int ret = 0;	long rcvlen = 0;	char buf[MAX_STRING_LENGTH];	#ifdef MY_DEBUG	char FuncName[128] = {"getTuxedoMibValue"};	sprintf(DebugMsg,"getTuxedoMibValue Begin\n");	writeLog(FuncName,DebugMsg,DEBUG_MSG);#endif	memset(buf,'\0',sizeof(buf));	memset(pMibValue,'\0',sizeof(pMibValue));	/* Attach to System/T as a Client Process */	if (tpinit((TPINIT *) NULL) == -1) {#ifdef MY_DEBUG		sprintf(DebugMsg,"Tpinit failed\n");		writeLog(FuncName,DebugMsg,ERROR_MSG);#endif		return RTN_FAIL;	}	/* Allocate STRING buffers for the request and the reply */	if((sendbuf = (FBFR32 *)tpalloc("FML32", NULL, 4096)) == NULL) {#ifdef MY_DEBUG		sprintf(DebugMsg,"Error allocating send buffer\n");		writeLog(FuncName,DebugMsg,ERROR_MSG);#endif		tpterm();		return RTN_FAIL;	}	if((rcvbuf = (FBFR32 *)tpalloc("FML32", NULL, 4096)) == NULL) {#ifdef MY_DEBUG		sprintf(DebugMsg,"Error allocating receive buffer\n");		writeLog(FuncName,DebugMsg,ERROR_MSG);#endif		tpterm();		return RTN_FAIL;	}	/* Set MIB attributes defining request type */	Fchg32(sendbuf,TA_OPERATION,0,"GET",0);	Fchg32(sendbuf,TA_CLASS,0,pTaClassName,0);	/* Invoke the /AdminAPI and interpret results */	if(tpcall(".TMIB", (char *)sendbuf, 0, (char **)&rcvbuf, &rcvlen, 0) != RTN_SUCCESS) {#ifdef MY_DEBUG		sprintf(DebugMsg,"Can't send request to service TOUPPER\n");		writeLog(FuncName,DebugMsg,ERROR_MSG);#endif		tpterm();		return RTN_FAIL;	}	/* For each KPI,get value */	if(strcmp(pTaAttrName,"TA_TLOGDEVICE") == 0) {		ret=Fgets32(rcvbuf,TA_TLOGDEVICE,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_ULOGPFX") == 0) {		ret=Fgets32(rcvbuf,TA_ULOGPFX,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_CURCLIENTS") == 0) {		ret=Fgets32(rcvbuf,TA_CURCLIENTS,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_CURCONV") == 0) {		ret=Fgets32(rcvbuf,TA_CURCONV,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_CURRLOAD") == 0) {		ret=Fgets32(rcvbuf,TA_CURRLOAD,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_WKCOMPLETED") == 0) {		ret=Fgets32(rcvbuf,TA_WKCOMPLETED,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_TOTREQC") == 0) {		ret=Fgets32(rcvbuf,TA_TOTREQC,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_TOTWORKL") == 0) {		ret=Fgets32(rcvbuf,TA_TOTWORKL,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_CURRSERVICE") == 0) {		ret=Fgets32(rcvbuf,TA_CURRSERVICE,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_MAXACCESSERS") == 0) {		ret=Fgets32(rcvbuf,TA_MAXACCESSERS,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_STATE") == 0) {		ret=Fgets32(rcvbuf,TA_STATE,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_NQUEUED") == 0) {		ret=Fgets32(rcvbuf,TA_NQUEUED,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_MSG_QNUM") == 0) {		ret=Fgets32(rcvbuf,TA_MSG_QNUM,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_WKINITIATED") == 0) {		ret=Fgets32(rcvbuf,TA_WKINITIATED,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_NCOMPLETED") == 0) {		ret=Fgets32(rcvbuf,TA_NCOMPLETED,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_NUMTRANABT") == 0) {		ret=Fgets32(rcvbuf,TA_NUMTRANABT,0,buf);		sprintf(pMibValue,"%s",buf);	}else if(strcmp(pTaAttrName,"TA_MAXCONV") == 0) {		ret=Fgets32(rcvbuf,TA_MAXCONV,0,buf);		sprintf(pMibValue,"%s",buf);	}		tpfree((char *)rcvbuf);	tpterm();#ifdef MY_DEBUG	sprintf(DebugMsg,"getTuxedoMibValue end OK\n");	writeLog(FuncName,DebugMsg,DEBUG_MSG);#endif	return RTN_SUCCESS;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -