Reduce verbose logging from INFO to DEBUG/TRACE
Cleaned up excessive INFO logging that was added during debugging. Logs are now properly categorized by verbosity: - Frequent/repeated logs (every chunk) → TRACE * TimerNode SLEEPING messages * Broadcaster "Read X bytes" messages - Occasional/setup logs → DEBUG * Node::run() starting/spawning * TopZeroSync received * Cancelled during sleep - Important events remain INFO * Encoder initialization * Header captured * Stream ended * Broadcaster task started This makes INFO logs clean and useful for production monitoring, while keeping detailed information available via DEBUG/TRACE levels. Tested with RUST_LOG=info - output is now clean with only meaningful events logged. Affected files: - pmoaudio/src/nodes/timer_node.rs: SLEEPING → trace, TopZeroSync → debug - pmoaudio/src/pipeline.rs: Node::run/Spawning → debug - pmoaudio-ext/src/sinks/streaming_flac_sink.rs: Read bytes → trace
This commit is contained in:
@@ -752,7 +752,7 @@ async fn broadcast_flac_stream(
|
||||
Ok(n) => {
|
||||
total_bytes += n as u64;
|
||||
if total_bytes % 100000 == 0 || total_bytes < 10000 {
|
||||
info!("Read {} bytes from FLAC encoder (total: {})", n, total_bytes);
|
||||
trace!("Read {} bytes from FLAC encoder (total: {})", n, total_bytes);
|
||||
}
|
||||
|
||||
// Precise pacing based on audio timestamp
|
||||
|
||||
@@ -137,7 +137,7 @@ impl NodeLogic for TimerNodeLogic {
|
||||
SyncMarker::TopZeroSync => {
|
||||
// Reset le timer de référence
|
||||
self.start_time = Some(Instant::now());
|
||||
tracing::info!("TimerNodeLogic: TopZeroSync received, timer reset");
|
||||
tracing::debug!("TimerNodeLogic: TopZeroSync received, timer reset");
|
||||
}
|
||||
_ => {
|
||||
// Autres markers: passthrough transparent
|
||||
@@ -156,7 +156,7 @@ impl NodeLogic for TimerNodeLogic {
|
||||
if lead_time > self.max_lead_time_sec {
|
||||
// On est trop en avance, attendre
|
||||
let sleep_duration = lead_time - self.max_lead_time_sec;
|
||||
tracing::info!(
|
||||
tracing::trace!(
|
||||
"TimerNodeLogic: SLEEPING {:.3}s (lead_time={:.3}s > max={:.1}s)",
|
||||
sleep_duration,
|
||||
lead_time,
|
||||
@@ -166,7 +166,7 @@ impl NodeLogic for TimerNodeLogic {
|
||||
tokio::select! {
|
||||
_ = tokio::time::sleep(Duration::from_secs_f64(sleep_duration)) => {}
|
||||
_ = stop_token.cancelled() => {
|
||||
tracing::info!("TimerNodeLogic cancelled during sleep");
|
||||
tracing::debug!("TimerNodeLogic cancelled during sleep");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -518,7 +518,7 @@ impl<L: NodeLogic> AudioPipelineNode for Node<L> {
|
||||
..
|
||||
} = *self;
|
||||
|
||||
tracing::info!("Node::run() starting with {} children", children.len());
|
||||
tracing::debug!("Node::run() starting with {} children", children.len());
|
||||
|
||||
// ═══════════════════════════════════════════════════════════════════
|
||||
// PHASE 1: SPAWNER TOUS LES ENFANTS
|
||||
@@ -526,14 +526,14 @@ impl<L: NodeLogic> AudioPipelineNode for Node<L> {
|
||||
|
||||
let mut child_handles = Vec::new();
|
||||
for (i, child) in children.into_iter().enumerate() {
|
||||
tracing::info!("Spawning child {}", i);
|
||||
tracing::debug!("Spawning child {}", i);
|
||||
let child_token = stop_token.child_token();
|
||||
let handle = tokio::spawn(async move {
|
||||
child.run(child_token).await
|
||||
});
|
||||
child_handles.push(handle);
|
||||
}
|
||||
tracing::info!("All {} children spawned", child_handles.len());
|
||||
tracing::debug!("All {} children spawned", child_handles.len());
|
||||
|
||||
// ═══════════════════════════════════════════════════════════════════
|
||||
// PHASE 2: MONITORER LES ENFANTS EN PARALLÈLE
|
||||
|
||||
Reference in New Issue
Block a user