buffet: Add --log_to_stderr option

Useful for debugging. Privetd and Peerd has the same.

BUG=none
TEST=sudo -u buffet buffet --log_to_stderr

Change-Id: Ic60f6fcbc43087731f4e7343a04be5602af07212
Reviewed-on: https://chromium-review.googlesource.com/260300
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/main.cc b/buffet/main.cc
index a4156c4..6893723 100644
--- a/buffet/main.cc
+++ b/buffet/main.cc
@@ -60,6 +60,7 @@
 }  // namespace
 
 int main(int argc, char* argv[]) {
+  DEFINE_bool(log_to_stderr, false, "log trace messages to stderr as well");
   DEFINE_string(config_path, kDefaultConfigFilePath,
                 "Path to file containing config information.");
   DEFINE_string(state_path, kDefaultStateFilePath,
@@ -72,7 +73,11 @@
     FLAGS_config_path = kDefaultConfigFilePath;
   if (FLAGS_state_path.empty())
     FLAGS_state_path = kDefaultStateFilePath;
-  chromeos::InitLog(chromeos::kLogToSyslog | chromeos::kLogHeader);
+  int flags = chromeos::kLogToSyslog | chromeos::kLogHeader;
+  if (FLAGS_log_to_stderr)
+    flags |= chromeos::kLogToStderr;
+  chromeos::InitLog(flags);
+
   buffet::Daemon daemon{base::FilePath{FLAGS_config_path},
                         base::FilePath{FLAGS_state_path},
                         base::FilePath{FLAGS_test_definitions_path}};