The commands on this page need the Administrator permission.
How it works
All logging is off until you point a category at a channel. From then on, Bloom posts an embed to that channel whenever a matching event happens. Nothing is stored for you to browse later, so treat log channels as the record itself and keep them private. Bloom needs View Channel, Send Messages, and Embed Links in every channel it logs to. When it cannot post, the event is simply not logged.What each category logs
Type names also accept their plural, and a few have short forms:
mods, msg, vc, and guild.
Messages from bots and webhooks are left out of message logs.
Quick start
1
Make a staff channel
Create a channel only your staff can read, and confirm Bloom can view it, send messages, and embed links.
2
Point a category at it
Run
!logs mod #mod-logs. Bloom replies Moderation log channel has been set to #mod-logs and posts a confirmation in that channel, so you can see right away that it can write there.3
Add the categories you need
Repeat for each category, for example
!logs message #message-logs. To send everything to one channel, run !logs all #server-logs.4
Review the setup
Run
!logs with no arguments to list every category that is currently pointed at a channel.Setting log channels
Administrator
Sets where each category is logged. Aliases:
setlogs, logchannel, setlogchannel.!logsshows the valid types and which categories are active.!logs mod #mod-logssends that category to a channel. The channel can be a mention or its exact name.!logs all #server-logspoints every category at one channel.!logs message noneturns off one category.!logs all noneturns off all of them.- Bloom needs: View Channel, Send Messages, Embed Links in the target channel, plus Attach Files to post bulk deletion files.
Join logs, two ways
logs join and logs leave record joins and leaves as separate entries, in separate channels if you want. joinlogs instead keeps one entry per member and rewrites it when they leave, which keeps the arrival and departure of a member together.
Administrator
Posts a single embed when a member joins and edits that same embed when they leave, adding the time they left. Alias:
joinlog.Each entry flags accounts younger than seven days, accounts with no avatar, and accounts Discord has marked as spammers.- You need: Administrator
- Bloom needs: View Channel, Send Messages, Embed Links in the target channel.
This is a separate setting from the Join category, so
!logs all none does not switch it off. Use !joinlogs off for that. Configuring both means every join is recorded twice.Leaving things out
Administrator
Excludes a channel from message logs. Edits and deletions there are never posted. Other categories are unaffected. Aliases:
ignorelogchannel, logexclude.!logignore add #spamstops logging messages from that channel.!logignore remove #spamstarts logging it again. This also accepts a channel ID, so you can clean up entries for channels that no longer exist.!logignore listshows everything currently ignored.
Administrator
Leaves a role out of the role log. Run it again on the same role to undo it.Ignored roles are skipped when a role is edited or deleted, and when members gain or lose that role. Useful for roles that change constantly, such as level rewards or a color role. Role creation is still logged.
Configuring from the dashboard
The Logging module on the dashboard sets the same channels with a picker, and manages the ignored channel and role lists. It needs Administrator, like the commands.Troubleshooting
Nothing appears in a log channel
Nothing appears in a log channel
Run
!logs to confirm the category still points where you expect. If the channel was deleted or renamed, set it again. Then check that Bloom can View Channel, Send Messages, and Embed Links there. Setting a category posts a confirmation into the target channel, so if that message never arrives, the permissions are the problem.A deleted message was logged without its content
A deleted message was logged without its content
Discord does not always hand over the content of older messages when they are deleted. Bloom fills the gap from its own record where it has one, and otherwise logs the deletion with the author and channel but no text.
Entries do not say who did it
Entries do not say who did it
Bloom takes the responsible person from Discord’s audit log. Grant it View Audit Log. Some events, such as thread creation, are attributed by Discord differently and may show only a user ID.
Every join is logged twice
Every join is logged twice
Both
joinlogs and the Join category are set. Keep the one you prefer and disable the other with !joinlogs off or !logs join none.A busy channel is flooding the message log
A busy channel is flooding the message log
Run
!logignore add #channel. Edits and deletions in that channel stop being logged, and every other category keeps working.Related pages
Invite and first setup
Where logging fits into setting up a new server.
Permissions and hierarchy
Fixing the permission errors that stop Bloom writing to a channel.
Welcome messages
The public greeting for new members, separate from join logs.
Dashboard access
Signing in and controlling who can open the Logging module.