    struct logger *kernel_logger = android_logger_open(logger_list, (log_id_t)5); // LOG_ID_KERNEL
    assert(kernel_logger);
  
    Context * c = Context::create();
    PubSocket * androidLog = PubSocket::create(c, "androidLogEntry");
    assert(androidLog != NULL);
  
    while (1) {
      log_msg log_msg;
      err = android_logger_list_read(logger_list, &log_msg);
 
</s> remove   sm = messaging.SubMaster(['logMessage', 'androidLogEntry'], addr=args.addr)
 </s> add   sm = messaging.SubMaster(['logMessage', 'androidLog'], addr=args.addr) </s> remove     if sm.updated['androidLogEntry']:
      t = sm.logMonoTime['androidLogEntry']
      m = sm['androidLogEntry']
 </s> add     if sm.updated['androidLog']:
      t = sm.logMonoTime['androidLog']
      m = sm['androidLog']
  PubSocket * androidLog = PubSocket::create(c, "androidLog");
    struct logger *kernel_logger = android_logger_open(logger_list, (log_id_t)5); // LOG_ID_KERNEL
    assert(kernel_logger);
  
    Context * c = Context::create();
  PubSocket * androidLog = PubSocket::create(c, "androidLog");
    assert(androidLog != NULL);
  
    while (1) {
      log_msg log_msg;
      err = android_logger_list_read(logger_list, &log_msg);
keep keep keep keep replace keep keep keep keep keep
 rename event name instead of service 
selfdrive/logcatd/logcatd.cc