Logging
Record what happens in your server — 118 events across 10 categories — and route each one to the channel you choose. Plus a per-action logger for every Arclo system.
Logging is the system every other system reports into, and the first thing worth setting up. It has no master switch: a server with no log channel is already logging nothing, so a switch would be a second way of saying the same thing.
Where logs go8 of 10 routed · 2 still need a channel
A message was deleted — with its content, its author and who removed it.
Needs audit logA message was edited, with the text before and after.
Someone was banned, with the moderator and the reason.
Needs audit logTwo or more messages were bulk-deleted. The whole batch is attached as a readable transcript.
Needs audit log118 events in 10 categories · every one can go to its own channel, with who did it from the audit log
Setting it up
Open General → Logging
The page has 4 tabs: Event Logs, System Logs, General Settings, Commands.
Set a default channel
On General Settings, choose where anything without a channel of its own should go. One private staff channel is a fine start.
Or let Arclo build the channels for you
Set up my log channels creates a private
arclo logscategory with one channel per log category, skipping any category that already has one.Turn on the categories you want
Each category has a switch, and so does each event inside it. Both must be on for a line to be delivered.
Start with the categories, not the events
Switching on a category switches on the events inside it that are on by default. Going event by event through 118 switches is a job for later, when you know which lines you actually want.
Event Logs
The gateway events — everything that happens in Discord, whether or not Arclo did it.
| Category | Covers | Events |
|---|---|---|
| Server | Server settings, emojis, stickers, sounds, scheduled events and onboarding. | 22 |
| Channels | Channels, threads, stages and permission overwrites. | 16 |
| Roles | Roles created, renamed, recolored, deleted — and their permissions. | 4 |
| Members | Nicknames, roles, avatars, timeouts, boosts and screening. | 12 |
| Joins & Leaves | Arrivals and departures — joins, leaves, kicks, bans and prunes. | 7 |
| Messages | Deletes, edits, purges, pins, reactions, poll votes and ghost pings. | 16 |
| Voice | Joins, leaves, moves, mutes, streams and camera. | 18 |
| Moderation | AutoMod rules and everything AutoMod blocks, flags or times out. | 6 |
| Apps & Integrations | Invites, webhooks, bots and third-party integrations. | 11 |
| Arclo | Arclo's own activity — commands, dashboard changes and permission problems. | 6 |
- Each card carries a colored hairline saying what kind of line it is: green made something, red removed something, yellow changed something.
- Cards marked Needs audit log can only name who did it if Arclo has View Audit Log. Without it the line still posts, saying what happened but not who.
- Cards marked Noisy fire often. They are off by default for a reason.
Routing
Arclo resolves a destination most-specific-first, and the same resolver answers the “where does this go?” chip on the dashboard, so the page can never promise a channel the bot would not use.
the event's own channel → its category's channel → the default channelPer-event channels are optional
The intended shape is one channel per category. A per-event override is behind a button on the card for the handful of lines that deserve their own home — bans in #mod-log, everything else in #member-log.
System Logs
The other half: what Arclo did. Every system has one logger with its own switch, its own channel and a switch per action — “Ticket claimed”, “Reward failed”, “Sticky reposted”.
- The structure mirrors Event Logs exactly: system is to action what category is to event, and the routing rule is the same one.
- There is one logger per system, not one per configuration. Four verification panels share one verification logger.
- The same controls appear on each system's own page, at the bottom. Editing from either place edits the same record.
- A switched-off logger hides its channel and its action list rather than dimming them — there is nothing there to configure while it is off.
General settings
- Default channel
- The fallback destination for anything without a channel of its own.
- Ignored channels
- Nothing happening in these channels is logged. Ignoring a category ignores its channels.
- Ignored roles
- Actions by members holding one of these are not logged.
- Ignored members
- Specific people — usually other bots you have already made noisy.
- Ignore bots / ignore Arclo
- Two switches, because “do not log other bots” and “do not log yourself” are different wishes.
- Ignored prefixes
- Messages starting with these are skipped — the standard way to keep another bot's commands out of your message log.
- Delivery
- Lines are sent through a webhook by default, which is faster and has its own rate limit. Name and avatar are yours to set.
- Appearance
- The look of the log embeds themselves.
Log channels never log themselves
Anything happening inside a configured log channel is skipped outright. Without that rule, a line quoting a discord.gg link posted into #server-log gets logged by the Messages category as somebody posting an invite — and then that gets logged too.
Behaviour
- Lines are batched. They buffer for just over a second and send up to ten at a time, so a raid or a purge does not put your log channel minutes behind.
- A kick and a ban both arrive as a member leaving. Arclo waits a moment for the audit-log entry that explains which it was, so a ban logs once and a kick logs at all.
- Timestamps render in the reader's own time zone — they are Discord timestamps, not baked text, so there is no log time zone to set.
- A broken webhook is retried. A channel Arclo cannot post to is marked and retried a few minutes later, because the fix happens in Discord where the bot never hears about it.
- Arclo reports its own permission problems. “Why did the welcome message stop sending?” gets an answer in your log channel, at most once an hour per permission.
Commands
/logs status [category]Manage ServerShows which log types are switched on, where each category is being sent, and anything blocking delivery.
/logs channel <category> <channel>Manage ServerPoints a log category — or the server-wide default — at a channel.
/logs toggle <target> <on|off>Manage ServerSwitches a whole log category, or one individual log type, on or off.
/logs ignore [channel] [role] [member] [prefix]Manage ServerStops a channel, role, member or message prefix from ever appearing in the logs.
/logs unignore [channel] [role] [member] [prefix]Manage ServerTakes something back off the logging ignore list.
Still stuck? Ask in the support server — somebody there has almost certainly configured this before.
