Log the timestamp each part file is created too

This gives us another tool for helping figure out which boot came first,
and also debug how/when log parts are written.

Change-Id: I015a5024ceaa3b95af7ff621de706ef16cff55e8
Signed-off-by: Austin Schuh <austin.schuh@bluerivertech.com>
diff --git a/aos/events/logging/log_namer.cc b/aos/events/logging/log_namer.cc
index 5ab4636..a4b15e8 100644
--- a/aos/events/logging/log_namer.cc
+++ b/aos/events/logging/log_namer.cc
@@ -125,7 +125,7 @@
   const UUID &source_node_boot_uuid = boot_uuids[node_index];
   const Node *const source_node =
       configuration::GetNode(configuration_, node_index);
-  CHECK_EQ(LogFileHeader::MiniReflectTypeTable()->num_elems, 18u);
+  CHECK_EQ(LogFileHeader::MiniReflectTypeTable()->num_elems, 20u);
   flatbuffers::FlatBufferBuilder fbb;
   fbb.ForceDefaults(true);
 
@@ -255,6 +255,14 @@
   }
 
   log_file_header_builder.add_boot_uuids(boot_uuids_offset);
+  log_file_header_builder.add_logger_part_monotonic_start_time(
+      std::chrono::duration_cast<std::chrono::nanoseconds>(
+          event_loop_->monotonic_now().time_since_epoch())
+          .count());
+  log_file_header_builder.add_logger_part_realtime_start_time(
+      std::chrono::duration_cast<std::chrono::nanoseconds>(
+          event_loop_->realtime_now().time_since_epoch())
+          .count());
   fbb.FinishSizePrefixed(log_file_header_builder.Finish());
   aos::SizePrefixedFlatbufferDetachedBuffer<LogFileHeader> result(
       fbb.Release());
@@ -303,9 +311,8 @@
 }
 
 MultiNodeLogNamer::MultiNodeLogNamer(std::string_view base_name,
-                                     const Configuration *configuration,
-                                     const Node *node)
-    : LogNamer(configuration, node), base_name_(base_name), old_base_name_() {}
+                                     EventLoop *event_loop)
+    : LogNamer(event_loop), base_name_(base_name), old_base_name_() {}
 
 MultiNodeLogNamer::~MultiNodeLogNamer() {
   if (!ran_out_of_space_) {