From: Steven Baigal (sbaigal) Date: Tue, 5 Aug 2025 14:54:21 +0000 (+0000) Subject: Pull request #4849: packet_tracer: file output will not be using batched logger X-Git-Tag: 3.9.3.0~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=761a48653f9dbf5b3ce06a13a119452f8939bb6b;p=thirdparty%2Fsnort3.git Pull request #4849: packet_tracer: file output will not be using batched logger Merge in SNORT/snort3 from ~SBAIGAL/snort3:batchlog_file to master Squashed commit of the following: commit 2f1655e862c30edf80985997f22805027952e2bc Author: Steven Baigal Date: Mon Aug 4 19:08:24 2025 -0400 packet_tracer: file output will not be using batched logger --- diff --git a/src/packet_io/packet_tracer.cc b/src/packet_io/packet_tracer.cc index acd6d2b07..6d9772f65 100644 --- a/src/packet_io/packet_tracer.cc +++ b/src/packet_io/packet_tracer.cc @@ -132,6 +132,7 @@ void PacketTracer::thread_init() void PacketTracer::thread_term() { + BatchedLogger::BatchedLogManager::flush_thread_buffers(); delete s_pkt_trace; s_pkt_trace = nullptr; } @@ -161,8 +162,14 @@ void PacketTracer::dump(Packet* p) PacketTracer::log("Verdict Reason: %s, %s\n", drop_reason, p->active->get_action_string() ); if (s_pkt_trace->buff_len < max_buff_size - 1) s_pkt_trace->buffer[s_pkt_trace->buff_len++] = '\n'; - BatchedLogger::BatchedLogManager::log(s_pkt_trace->log_fh, SnortConfig::log_syslog(), - s_pkt_trace->buffer, s_pkt_trace->buff_len); + if (s_pkt_trace->log_fh && s_pkt_trace->log_fh != stdout) + { + fprintf(s_pkt_trace->log_fh, "%.*s", s_pkt_trace->buff_len, s_pkt_trace->buffer); + fflush(s_pkt_trace->log_fh); + } + else + BatchedLogger::BatchedLogManager::log(s_pkt_trace->log_fh, SnortConfig::log_syslog(), + s_pkt_trace->buffer, s_pkt_trace->buff_len); } s_pkt_trace->reset(false);