Configuration Guide
This guide covers both user-facing commands and advanced developer configuration options for Event Sentinel.
đĨ For Server Administrators: Most configuration can be done using the /setlogchannel command. See the Getting Started guide for simple setup instructions.
đ Using the Hosted Instance? Invite Event Sentinel to your server and start configuring with commands - no setup required!
Multi-Server Support
The bot fully supports multiple Discord servers! Each server can have its own dedicated log channel, configured independently using /setlogchannel.
For Server Administrators:
When you add Event Sentinel to multiple servers:
- Run
/setlogchannelin each server - Select the desired log channel for that server
- Each server's configuration is stored separately
Note: You don't need to configure anything special - just run the command in each server and select the appropriate channel!
All Available Commands
Event Sentinel provides a comprehensive set of commands for configuration, customization, and monitoring. All commands are slash commands (type / to see them).
âī¸ Configuration Commands
/setlogchannel
Permission: Administrator | Description: Set the log channel for this server
The primary command for setting up Event Sentinel. Select a channel where all event logs will be sent.
/setlogchannel â Select channel from dropdown
Note: The bot must have "Send Messages" and "Embed Links" permissions in the selected channel.
/setcolor
Permission: Administrator | Description: Set custom embed colors for event categories
Customize the color of embeds for different event types. Available categories:
moderation- Moderation events (bans, kicks, timeouts, etc.)channel- Channel and thread eventsvoice- Voice channel eventsmessage- Message edit/delete eventsserver- Server settings and invite eventsrole- Role creation/update/delete events
/setcolor category:moderation color:E74C3C/setcolor category:voice color:#9B59B6/setcolor category:message color:0x2ECC71
Color Format: You can use hex colors with or without prefixes: E74C3C, #E74C3C, or 0xE74C3C
/setmodmailchannel
Permission: Administrator | Description: Set the channel for modmail threads
Configure which channel modmail threads will be created in. When users DM the bot, a thread will be created in this channel for staff to respond. Users in multiple servers can select which server to contact via a dropdown menu, with the support server always shown first with a special indicator (đ).
/setmodmailchannel â Select channel from dropdown
Required Permissions: The bot needs these permissions in the selected channel:
- Send Messages
- Embed Links
- Create Public Threads
- Send Messages in Threads
Note: This command validates permissions before setting the channel. If permissions are missing, you'll receive an error message listing what's needed.
/togglemail
Permission: Administrator | Description: Enable/disable modmail for this server
Control whether modmail is active for your server. When disabled, users won't be able to contact staff via DMs.
/togglemail enabled:true - Enable modmail/togglemail enabled:false - Disable modmail
Note: You must set a modmail channel with /setmodmailchannel before enabling modmail.
/closemodmail
Permission: Manage Threads | Description: Close the current modmail thread
Close and archive a modmail thread. This command can only be used within a modmail thread and requires the "Manage Threads" permission.
/closemodmail - Close the current thread/closemodmail reason:Issue resolved - Close with a reason
Note: When a thread is closed, the user will be notified via DM and the thread will be archived and locked.
đ§ Event Toggle Commands
Enable or disable specific event types. All events are enabled by default. These commands allow you to fine-tune what gets logged.
/togglemoderation
Permission: Administrator | Description: Enable/disable moderation events
Available events: member_ban, member_unban, member_join, member_remove, member_kick, nickname_change, timeout_set, timeout_removed, role_added, role_removed
/togglemoderation event_key:member_ban enabled:false
/togglevoice
Permission: Administrator | Description: Enable/disable voice channel events
Available events: self_mute, self_unmute, server_mute, server_unmute
/togglevoice event_key:self_mute enabled:false
/togglemessage
Permission: Administrator | Description: Enable/disable message events
Available events: message_delete, message_edit
/togglemessage event_key:message_delete enabled:false
/togglechannel
Permission: Administrator | Description: Enable/disable channel/thread events
Available events: channel_create, channel_delete, channel_update, thread_create, thread_delete, thread_update
/togglechannel event_key:thread_create enabled:false
/togglerole
Permission: Administrator | Description: Enable/disable role events
Available events: role_create, role_delete, role_update
/togglerole event_key:role_update enabled:false
/toggleserver
Permission: Administrator | Description: Enable/disable server events
Available events: guild_update, invite_create, invite_delete
/toggleserver event_key:invite_create enabled:false
âšī¸ Information Commands
/config
Permission: Administrator | Description: View current server configuration
Shows your server's complete configuration including:
- Log channel status and permissions
- Modmail channel and status (if configured)
- Custom embed colors (if any)
- Event toggle overrides
/config
/listeventtoggles
Permission: Administrator | Description: View current event toggle overrides
Lists all events that have been enabled or disabled (shows only custom overrides, not defaults).
/listeventtoggles
/botinfo
Permission: Anyone | Description: View bot status and information
Displays bot statistics including uptime, latency, server count, member count, and an invite link.
/botinfo
/checkperms
Permission: Administrator | Description: Check bot permissions in this server
Verifies that the bot has all required permissions. Shows which permissions are present and which are missing, including log channel-specific permissions.
/checkperms
/ratelimitstatus
Permission: Administrator | Description: View rate limiting statistics and queue information
Displays comprehensive rate limiting statistics including:
- Rate limit hits (429 errors encountered)
- Messages queued and sent
- Queue overflows
- Per-channel queue status
- Global rate limit statistics
/ratelimitstatus
Use Cases: Monitor bot performance, troubleshoot message delivery issues, and verify rate limiting is working correctly.
đ ī¸ Utility Commands
/testlog
Permission: Administrator | Description: Send a test embed to the log channel
Use this command to verify that logging is working correctly. Sends a test message to your configured log channel.
/testlog
Use Cases:
- After initial setup to verify everything works
- After changing the log channel
- When troubleshooting logging issues
/help
Permission: Anyone | Description: Show all available commands
Displays a help menu with all commands organized by category. This is the quickest way to see what commands are available.
/help
đŦ Modmail Commands
/closemodmail
Permission: Manage Threads | Description: Close the current modmail thread
Close and archive a modmail thread. This command can only be used within a modmail thread and requires the "Manage Threads" permission.
/closemodmail - Close the current thread/closemodmail reason:Issue resolved - Close with a reason
Note: When a thread is closed, the user will be notified via DM and the thread will be archived and locked.
Advanced Configuration (For Developers)
The following configuration options are for developers hosting their own bot instance. End users don't need to modify these files.
Architecture (Developer Information)
The bot uses a modular cog-based structure:
event-sentinel/
âââ main.py # Bot initialization and startup
âââ __main__.py # Module entry point (run as: python -m .)
âââ utils.py # Shared utility functions
âââ rate_limiter.py # Rate limiting system
âââ dashboard.py # Web dashboard (optional)
âââ config.json # Bot configuration
âââ cogs/
â âââ moderation.py # Member and moderation events
â âââ voice.py # Voice channel events
â âââ message.py # Message events
â âââ server.py # Server and invite events
â âââ roles.py # Role events
â âââ channels.py # Channel and thread events
â âââ utility.py # Utility commands (help, config, etc.)
â âââ modmail.py # Modmail system
Common Questions
How do I change the log channel?
Simply run /setlogchannel again and select a different channel. The bot will immediately start sending logs to the new channel.
Can I have different log channels for different event types?
Currently, Event Sentinel uses one log channel per server for all event types. All events will be sent to the channel you configure with /setlogchannel.
How do I set up modmail?
First, create a channel for modmail threads, then run /setmodmailchannel to select that channel. Finally, enable modmail with /togglemail enabled:true. Once enabled, users can DM the bot to create support threads. Users in multiple servers will see a dropdown menu to select which server to contact, with the support server always shown first. See the Getting Started guide for detailed instructions.
Can I disable modmail temporarily?
Yes! Use /togglemail enabled:false to disable modmail. Users won't be able to contact staff via DMs while disabled. Re-enable it anytime with /togglemail enabled:true.
How do I disable specific events?
Use the toggle commands! For example, to disable message deletion logs, use /togglemessage event_key:message_delete enabled:false. To re-enable it, set enabled:true. Use /listeventtoggles to see all your current overrides.
What if I remove the bot and add it back?
You'll need to run /setlogchannel again to reconfigure the log channel. When the bot is removed from a server, all configuration data (log channels, event toggles, embed colors, modmail config) is automatically cleaned up. This ensures no stale data remains.
How do I reset all event toggles to defaults?
Currently, you need to manually re-enable each disabled event using the toggle commands. Use /listeventtoggles to see what's been changed, then use the appropriate toggle command to reset each one.
Can I customize embed colors?
Yes! Use /setcolor to customize the color of embeds for each event category. This allows you to match your server's theme or make certain events stand out more.
Error Handling
The bot gracefully handles:
- Missing permissions - The bot will attempt to log events but may show limited information
- Missing audit log entries - Some events may not include moderator information
- Unavailable log channels - The bot will continue running but won't be able to send logs
- Rate limiting - The bot automatically handles Discord's rate limits using an advanced rate limiting system
Rate Limiting System: Event Sentinel includes a comprehensive rate limiting system that automatically prevents Discord API rate limit errors. The system uses:
- Per-channel queuing (5 messages per 5 seconds) to prevent channel-specific rate limits
- Global rate limiting (50 requests per second) to protect against API overload
- Automatic retry with exponential backoff for 429 errors
- Queue overflow protection (maximum 100 items per queue)
All rate limiting happens automatically in the background - no configuration needed. Use /ratelimitstatus to monitor rate limiting statistics.
If you notice events aren't being logged, check that:
- The bot has permission to send messages in the log channel
- The log channel is properly configured with
/setlogchannel - The bot has "View Audit Log" permission in your server
- Check
/ratelimitstatusif messages seem delayed (may be queued due to rate limits)
Need Help?
If you're a server administrator, check the Getting Started guide.