Files
bouncer/docs/DEBUG.md
user ced6232373 feat: initial IRC bouncer implementation
Async Python IRC bouncer with SOCKS5 proxy support, multi-network
connections, password auth, and persistent SQLite backlog with replay.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 11:29:59 +01:00

1.3 KiB

Debugging

Verbose Mode

bouncer -c config/bouncer.toml -v

Debug logging shows:

  • SOCKS5 proxy connection attempts
  • IRC server registration
  • Client connect/disconnect events
  • Message routing
  • Backlog replay counts

Common Issues

"config not found"

Ensure the config path is correct:

bouncer -c /full/path/to/bouncer.toml

Connection refused (SOCKS5 proxy)

Verify the proxy is running:

ss -tlnp | grep 1080

Connection timeout to IRC server

Check the SOCKS5 proxy can reach the IRC server:

curl --socks5 127.0.0.1:1080 -v telnet://irc.libera.chat:6697

Nick already in use

The bouncer appends _ to the nick and retries. Check logs for:

WARNING bouncer.network [libera] nick in use, trying mynick_

TLS certificate errors

If connecting to a server with a self-signed cert, this is currently not supported. All TLS connections use the system CA store.

Inspecting the Backlog Database

sqlite3 config/bouncer.db

-- Recent messages
SELECT * FROM messages ORDER BY id DESC LIMIT 20;

-- Messages per network
SELECT network, COUNT(*) FROM messages GROUP BY network;

-- Client state
SELECT * FROM client_state;

Log Format

HH:MM:SS LEVEL module message

Levels: DEBUG, INFO, WARNING, ERROR