__progname is lsb compliant, I suppose.
Will check once and get back, in which case we can use that to print the 
process name.
Mathi.


>-----Original Message-----
>From: Mathivanan Naickan Palanivelu
>Sent: Friday, September 05, 2014 3:54 PM
>To: Venkata Mahesh Alla
>Cc: [email protected]; [email protected]
>Subject: Re: [devel] [PATCH 1 of 4] mds: change mds logging prefix readability
>[#520] V2
>
>Good first start.
>Ack, after addressing the comments inlined as [Mathi] in the attached
>patches.
>
>Mathi.
>
>>-----Original Message-----
>>From: Nagendra Kumar
>>Sent: Monday, August 18, 2014 4:52 PM
>>To: Mathivanan Naickan Palanivelu; [email protected]; Ramesh Babu
>>Betham
>>Cc: [email protected]
>>Subject: [PATCH 1 of 4] mds: change mds logging prefix readability
>>[#520] V2
>>
>> osaf/libs/core/mds/mds_log.c  |  57
>>+++++++++++++++++++++++++++++++-----------
>> osaf/libs/core/mds/mds_main.c |   2 +-
>> 2 files changed, 43 insertions(+), 16 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
>>@@ -25,11 +25,41 @@
>> #include "mds_log.h"
>> #include "mds_dt2c.h"                /* Include for arch-word definitions */
>>
>>-static char log_line_prefix[40];
>> static char *lf = NULL;
>>
>> static void log_mds(const char *str);
>>+static char process_name[255];
>>
>>+/*****************************************************
>>+ 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,13 +74,10 @@ 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();
>>+     memset(process_name, 0, 255);
>>+     get_process_name(process_name);
>>
>>      /* Copy the log-line-prefix */
>>-     strncpy(log_line_prefix, line_prefix, sizeof(log_line_prefix) - 1);
>>-     log_line_prefix[sizeof(log_line_prefix) - 1] = 0;       /* Terminate 
>>string */
>>
>>      if (lf != NULL)
>>              return NCSCC_RC_FAILURE;
>>@@ -64,8 +91,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 +112,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 +133,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 +154,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 +175,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 +197,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);
>>@@ -202,8 +229,8 @@ static void log_mds(const char *str)
>>              osafassert(tstamp_data);
>>
>>              strftime(asc_tod, sizeof(asc_tod), "%b %e %k:%M:%S",
>tstamp_data);
>>-             i = snprintf(log_string, sizeof(log_string), "%s.%06ld %s %s",
>>-                          asc_tod, tv.tv_usec, log_line_prefix, str);
>>+             i = snprintf(log_string, sizeof(log_string), "%s.%06ld %s",
>>+                          asc_tod, tv.tv_usec, str);
>>
>>              if (i >= sizeof(log_string)) {
>>                      i = sizeof(log_string);
>>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
>>@@ -413,7 +413,7 @@ 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);
>>+                     memset(pref, 0 ,50);
>>                      mds_log_init(buff, pref);
>>              }
>>

------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to