Discord Error Monitor Reporting Workflow
Discord Error Monitor has no slash commands. It listens for Athena’s internal
athena:error event and forwards valid reports automatically.
Report Workflow
- Athena emits an error through
athena:error. - The plugin validates its current main and language settings.
- It ignores disabled, empty, or exactly suppressed reports.
- It unwraps nested errors and collects AggregateError or
causechains. - It reads the error ID, type, impact, registration state, source, and stack.
- It removes the local working-directory path from the embed preview.
- It queues the report and applies the configured delivery delay.
- It sends the embed by webhook or setup channel.
- It attaches the fuller text report when enabled.
Report Contents
Each embed can show:
- Error message
- Athena error type and ID
- Resolved impact
- Whether the error is registered in Athena’s error data
- First useful application source frame
- Unique nested root causes
- A focused stack preview that prefers application frames over dependencies
- Capture timestamp
Messages, stack text, and causes are trimmed to stay within Discord limits. Triple backticks inside errors are sanitized so they cannot break the report’s code block.
Queue And Delivery
max_pending limits memory use during startup or bursts. When the queue is
full, the oldest pending report is removed before the new one is added.
rate_limit_ms spaces deliveries. Channel mode waits for Discord’s client-ready
event before flushing; webhook mode can send without waiting for the bot client.
Delivery failures are written to AthenaBot’s console as warnings.
Full Text Attachments
With include_stack_file: true, the plugin adds a text file containing the
message, type, ID, impact, registration state, timestamp, source, root causes,
and stack trace. Content is truncated at max_attachment_chars.
Review your errors before enabling attachments. Application arguments, filesystem locations, URLs, or other private values may appear in a full message or stack trace.