Skip to content

Server Logging

Track important server activity in the channels you choose. Logging is powered by reported events in the Discord API; moderation activities taken with Armory Bot are also captured and displayed in the dashboard.

Configuration lives on the dashboard

All logging configuration — log channels, per-event toggles, ignore lists, and per-event channel overrides — is on the Logging dashboard page (open with /dashboard); "configure on the web, act in Discord" (ADR-0015). There are no logging slash commands: the log embeds themselves are the feature's Discord surface.

Overview

The logging system supports granular event tracking for:

  • Member events (joins, leaves, nicknames, avatars, roles, timeouts)
  • Message events (deletes, edits, bulk deletes, pins)
  • Moderation events (kicks, bans, unbans)
  • Server events (channels, roles, emoji, stickers, webhooks, invites)
  • Voice activity (join, leave, move, mute, deafen, stream)
  • Threads and stage channels

You can route server, member, message, voice, and moderation logs to separate channels, and override the destination channel per event.

Quick Setup

  1. Run /dashboard and open the Logging page.
  2. Pick a channel for each log stream you want (server, member, message, voice, moderation).
  3. Enable the event toggles you care about — start with message delete/edit and member join/leave, then expand.
  4. Optionally add spam-heavy channels to the ignore list.

The bot needs View Channel, Send Messages, and Embed Links in each log channel.

Best Practices

  1. Use separate channels for message logs and moderation logs.
  2. Start with message delete/edit + member join/leave, then expand.
  3. Ignore spam-heavy channels to keep logs actionable.

Troubleshooting

No logs are appearing

Check:

  1. Log channels are configured on the Logging dashboard page.
  2. The event's toggle is enabled there.
  3. The source channel/user/role is not on an ignore list.
  4. The bot can view/send/embed in your log channels.

Some events are missing details

Discord may not always provide full cached message/member context for every event. This is expected on certain uncached events.