Skip to content

fix: suppress communication.receive.timeout debug log spam #561

@Aureliolo

Description

@Aureliolo

Summary

The message bus bridge logs communication.receive.timeout at DEBUG level every time a channel poll times out (1-second interval). With 8 channels (tasks, agents, budget, messages, system, approvals, meetings, #settings), this produces 8 debug lines per second -- 691,200 lines per day. In a 2-minute log sample, these timeout messages accounted for 41% of all log output (1,048 of 2,568 lines).

This noise makes real issues hard to find in logs and would flood debug.log and agent_activity.log once the file sinks are activated.

Analysis

A timeout on an idle channel poll is expected normal behavior -- it means no messages arrived in the polling window. This is not a diagnostic event worth logging. The log serves no debugging purpose: if channels stop working, the symptom would be missing events, not missing timeout logs.

Scope

Remove the communication.receive.timeout debug log entirely. A channel poll timing out is normal operation, not a condition that needs recording.

If a "channels are idle" diagnostic is needed for debugging connection issues, replace with a periodic batch summary (e.g., once per minute: "8 channels idle, 0 messages delivered in last 60s") at DEBUG level. But default should be no log.

Acceptance Criteria

  • No communication.receive.timeout lines in logs during normal idle operation
  • Channel message delivery still logs correctly when messages are published
  • No regression in message bus functionality
  • Tests updated if they assert on timeout log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    prio:mediumShould do, but not blockingscope:smallLess than 1 day of workspec:communicationDESIGN_SPEC Section 5 - Communication Architecturetype:fixBug fixes and corrections

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions