static gboolean __handle_message(JournalReader *self) { LogMessage *msg = log_msg_new_empty(); msg->pri = self->options->default_pri; gpointer args[] = {msg, self->options}; journald_foreach_data(self->journal, __handle_data, args); __set_message_timestamp(self, msg); log_source_post(&self->super, msg); return log_source_free_to_send(&self->super); }
static gboolean log_reader_handle_line(LogReader *self, const guchar *line, gint length, LogTransportAuxData *aux) { LogMessage *m; msg_debug("Incoming log entry", evt_tag_printf("line", "%.*s", length, line)); /* use the current time to get the time zone offset */ m = log_msg_new((gchar *) line, length, aux->peer_addr ? : self->peer_addr, &self->options->parse_options); log_msg_refcache_start_producer(m); log_transport_aux_data_foreach(aux, _add_aux_nvpair, m); log_source_post(&self->super, m); log_msg_refcache_stop(); return log_source_free_to_send(&self->super); }