完善redis出错处理。
This commit is contained in:
@@ -488,6 +488,12 @@ FULL_UPDATE:
|
|||||||
reply=NULL;
|
reply=NULL;
|
||||||
}
|
}
|
||||||
reply=_wrap_redisCommand(c,"EXEC");
|
reply=_wrap_redisCommand(c,"EXEC");
|
||||||
|
if(reply==NULL)
|
||||||
|
{
|
||||||
|
MESA_handle_runtime_log(logger, RLOG_LV_FATAL, maat_redis_monitor,
|
||||||
|
"Redis Communication error: %s.",c->errstr);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
assert(reply->type==REDIS_REPLY_ARRAY);
|
assert(reply->type==REDIS_REPLY_ARRAY);
|
||||||
*new_version=read_redis_integer(reply->element[0]);
|
*new_version=read_redis_integer(reply->element[0]);
|
||||||
sub_reply=reply->element[1];
|
sub_reply=reply->element[1];
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
LIBS= ../lib/libmaatframe.so -lhiredis_vip
|
LIBS= -lmaatframe -lhiredis_vip
|
||||||
INC=-I../inc/ -I ../src/entry/ -I../src/inc_internal/ -I/usr/include/MESA/
|
INC=-I../inc/ -I ../src/entry/ -I../src/inc_internal/ -I/usr/include/MESA/
|
||||||
all:
|
all:
|
||||||
g++ -o maat_redis_tool.o -c -g -Wall maat_redis_tool.cpp $(INC)
|
g++ -o maat_redis_tool.o -c -g -Wall maat_redis_tool.cpp $(INC)
|
||||||
|
|||||||
@@ -62,6 +62,12 @@ void read_rule_from_redis(const char*redis_ip, int redis_port, int redis_db,cons
|
|||||||
printf("No Effective Rules.\n");
|
printf("No Effective Rules.\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if(rule_num<0)
|
||||||
|
{
|
||||||
|
printf("Read Redis Error.\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
assert(update_type==CM_UPDATE_TYPE_FULL);
|
assert(update_type==CM_UPDATE_TYPE_FULL);
|
||||||
printf("MAAT Version: %d, key number: %d\n", version, rule_num);
|
printf("MAAT Version: %d, key number: %d\n", version, rule_num);
|
||||||
printf("Reading value: ");
|
printf("Reading value: ");
|
||||||
@@ -70,6 +76,7 @@ void read_rule_from_redis(const char*redis_ip, int redis_port, int redis_db,cons
|
|||||||
{
|
{
|
||||||
goto clean_up;
|
goto clean_up;
|
||||||
}
|
}
|
||||||
|
printf("Sorting.\n");
|
||||||
qsort(rule_list,rule_num, sizeof(struct serial_rule_t),
|
qsort(rule_list,rule_num, sizeof(struct serial_rule_t),
|
||||||
compare_serial_rule);
|
compare_serial_rule);
|
||||||
if((access(output_path,F_OK)) <0)
|
if((access(output_path,F_OK)) <0)
|
||||||
@@ -142,7 +149,7 @@ clean_up:
|
|||||||
int main(int argc, char * argv[])
|
int main(int argc, char * argv[])
|
||||||
{
|
{
|
||||||
int oc=0;
|
int oc=0;
|
||||||
char model='?';
|
//char model='?';
|
||||||
char redis_ip[64];
|
char redis_ip[64];
|
||||||
int redis_port=6379;
|
int redis_port=6379;
|
||||||
int redis_db=0;
|
int redis_db=0;
|
||||||
@@ -156,7 +163,7 @@ int main(int argc, char * argv[])
|
|||||||
switch(oc)
|
switch(oc)
|
||||||
{
|
{
|
||||||
case 'm':
|
case 'm':
|
||||||
model=oc;
|
//model=oc;
|
||||||
break;
|
break;
|
||||||
case 'h':
|
case 'h':
|
||||||
strncpy(redis_ip,optarg,sizeof(redis_ip));
|
strncpy(redis_ip,optarg,sizeof(redis_ip));
|
||||||
|
|||||||
Reference in New Issue
Block a user