Set yaz_log prefix to PID
authorAdam Dickmeiss <adam@indexdata.dk>
Wed, 3 Oct 2012 10:47:32 +0000 (12:47 +0200)
committerAdam Dickmeiss <adam@indexdata.dk>
Wed, 3 Oct 2012 10:47:32 +0000 (12:47 +0200)
This is to make it easier to track what Metaproxy process is
logging, especially duing reload where multiple Metaproxy processing
are running.

src/metaproxy_prog.cpp

index b30fc0b..19434be 100644 (file)
@@ -47,6 +47,16 @@ namespace mp = metaproxy_1;
 
 mp::RouterFleXML *routerp = 0;
 
+static void set_log_prefix(void)
+{
+#if HAVE_UNISTD_H
+    char str[80];
+
+    sprintf(str, "%lld", (long long) getpid());
+    yaz_log_init_prefix(str);
+#endif
+}
+
 #if HAVE_UNISTD_H
 static pid_t process_group = 0;
 
@@ -67,6 +77,7 @@ static void sig_term_handler(int s)
 
 static void work_common(void *data)
 {
+    set_log_prefix();
 #if HAVE_UNISTD_H
     process_group = getpgid(0); // save process group ID
 
@@ -108,6 +119,8 @@ static int sc_main(
     const char *pidfile = 0;
     const char *uid = 0;
 
+    set_log_prefix();
+
     while ((ret = options("c{config}:Dh{help}l:p:tu:V{version}w:X",
                           argv, argc, &arg)) != -2)
     {