osaf/libs/core/mds/mds_log.c | 50 ++++++++++++++++++++++++++++++++++-------- osaf/libs/core/mds/mds_main.c | 1 - 2 files changed, 40 insertions(+), 11 deletions(-)
1) No function change, only Changed the log prefix : Previously: <Date> <tipcid/pid> <log category> |<MDS_MODULE_NAME>: ------------------------------------------------------------------------------------------------------------------------------- Example : Nov 22 11:30:33.409534 <3155214320> NOTIFY |MDTM: Now Changed to: <Date> <processname[pid] <log category> <MDS_MODULE_NAME>: ---------------------------------------------------------------------------------------------------------------------------------- Example : Aug 14 9:52:29.008845 osafimmd[2807] NOTIFY |MDTM: 2) No function change, only Changed BEGIN MDS LOGGIN header from to Previously: Nov 22 11:23:21.567504 <5049> NOTIFY |BEGIN MDS LOGGING| PID=5049|ARCH=0|64bit=0 Now Changed to: Aug 14 9:52:26.068220 osafamfd[2871] NOTIFY |BEGIN MDS LOGGING| PID=[osafamfd[2871]] | ARCHW=9|64bit=1 diff --git a/osaf/libs/core/mds/mds_log.c b/osaf/libs/core/mds/mds_log.c --- a/osaf/libs/core/mds/mds_log.c +++ b/osaf/libs/core/mds/mds_log.c @@ -29,7 +29,38 @@ static char log_line_prefix[40]; static char *lf = NULL; static void log_mds(const char *str); +char process_name[30]; +/***************************************************** + Function NAME: get_process_name() + Returns : <process_name>[<pid> or <tipc_port_ref>] +*****************************************************/ +void get_process_name(char *process_name) +{ + char name[1024]; + uint32_t process_id = getpid(); + char *token; + + sprintf(name, "/proc/%d/cmdline", process_id); + FILE* f = fopen(name,"r"); + if(f){ + size_t size; + size = fread(name, sizeof(char), 1024, f); + if(size>0){ + if('\n'==name[size-1]) + name[size-1]='\0'; + } + fclose(f); + } + token = strtok(name, "/"); + while( token != NULL ) + { + strcpy(name,token); + token = strtok(NULL, "/"); + } + sprintf(process_name, "%s[%d]", name, process_id); + return; +} /******************************************************************************* * Funtion Name : mds_log_init * @@ -44,9 +75,8 @@ static char mds_log_fname[MAX_MDS_FNAME_ uint32_t mds_log_init(char *log_file_name, char *line_prefix) { FILE *fh; - uint32_t process_id = 0; - - process_id = (uint32_t)getpid(); + + get_process_name(process_name); /* Copy the log-line-prefix */ strncpy(log_line_prefix, line_prefix, sizeof(log_line_prefix) - 1); @@ -64,8 +94,8 @@ uint32_t mds_log_init(char *log_file_nam if ((fh = fopen(lf, "a+")) != NULL) { fclose(fh); - log_mds_notify("BEGIN MDS LOGGING| PID=%d|ARCHW=%x|64bit=%ld\n", - process_id, MDS_SELF_ARCHWORD, (long)MDS_WORD_SIZE_TYPE); + log_mds_notify("BEGIN MDS LOGGING| PID=[%s] | ARCHW=%x|64bit=%ld\n", + process_name, MDS_SELF_ARCHWORD, (long)MDS_WORD_SIZE_TYPE); } return NCSCC_RC_SUCCESS; @@ -85,7 +115,7 @@ void log_mds_critical(char *fmt, ...) int i; va_list ap; - i = snprintf(str, sizeof(str), "CRITICAL |"); + i = snprintf(str, sizeof(str), "%s CRITICAL |", process_name); va_start(ap, fmt); vsnprintf(str + i, sizeof(str) - i, fmt, ap); va_end(ap); @@ -106,7 +136,7 @@ void log_mds_err(char *fmt, ...) int i; va_list ap; - i = snprintf(str, sizeof(str), "ERR |"); + i = snprintf(str, sizeof(str), "%s ERR |", process_name); va_start(ap, fmt); vsnprintf(str + i, sizeof(str) - i, fmt, ap); va_end(ap); @@ -127,7 +157,7 @@ void log_mds_notify(char *fmt, ...) int i; va_list ap; - i = snprintf(str, sizeof(str), "NOTIFY |"); + i = snprintf(str, sizeof(str), "%s NOTIFY |", process_name); va_start(ap, fmt); vsnprintf(str + i, sizeof(str) - i, fmt, ap); va_end(ap); @@ -148,7 +178,7 @@ void log_mds_info(char *fmt, ...) int i; va_list ap; - i = snprintf(str, sizeof(str), "INFO |"); + i = snprintf(str, sizeof(str), "%s INFO |", process_name); va_start(ap, fmt); vsnprintf(str + i, sizeof(str) - i, fmt, ap); va_end(ap); @@ -170,7 +200,7 @@ void log_mds_dbg(char *fmt, ...) int i; va_list ap; - i = snprintf(str, sizeof(str), "DBG |"); + i = snprintf(str, sizeof(str), "%s DBG |", process_name); va_start(ap, fmt); vsnprintf(str + i, sizeof(str) - i, fmt, ap); va_end(ap); diff --git a/osaf/libs/core/mds/mds_main.c b/osaf/libs/core/mds/mds_main.c --- a/osaf/libs/core/mds/mds_main.c +++ b/osaf/libs/core/mds/mds_main.c @@ -289,7 +289,6 @@ uint32_t mds_lib_req(NCS_LIB_REQ_INFO *r { char buff[50], pref[50]; snprintf(buff, sizeof(buff), PKGLOGDIR "/mds.log"); - snprintf(pref, sizeof(pref), "<%u>", mds_tipc_ref); mds_log_init(buff, pref); } ------------------------------------------------------------------------------ _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel