]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
global: call config observers on global_init (and start logging!) 202/head
authorSage Weil <sage@inktank.com>
Sun, 7 Apr 2013 16:06:23 +0000 (09:06 -0700)
committerSage Weil <sage@inktank.com>
Sun, 7 Apr 2013 16:07:21 +0000 (09:07 -0700)
Currently we don't start logging on daemon startup unless the log_file
parameter was adjusted by ceph.conf.  Instead, we should call all config
observers so that the logging subsystem is fully configured and we log
even prior to the daemonize and common_init_finish (when we call observers
again).  This fixes logging for the initial period before we daemonize.
For some of the daemons (osd, mon), this includes significant work.  It
also fixes the problem where users don't see the 'ceph version ...' banner
on daemon start.

Backport: bobtail
Signed-off-by: Sage Weil <sage@inktank.com>
src/global/global_init.cc

index 0f7179c39dfda360340697e3570b73ccfe5f3fa5..9a77e734801360cabe4e03a4acc841898bf7c7c1 100644 (file)
@@ -106,6 +106,10 @@ void global_init(std::vector < const char * > *alt_def_args, std::vector < const
 
   g_lockdep = cct->_conf->lockdep;
 
+  // call all observers now.  this has the side-effect of configuring
+  // and opening the log file immediately.
+  conf->call_all_observers();
+
   // Now we're ready to complain about config file parse errors
   complain_about_parse_errors(cct, &parse_errors);