mirror of
https://github.com/LightZirconite/Microsoft-Rewards-Bot.git
synced 2026-01-10 01:06:17 +00:00
2.2 KiB
2.2 KiB
🐛 Automatic Error Reporting
Overview
The bot automatically reports errors to a community webhook to help identify and fix issues faster, without requiring manual bug reports from users.
Key Features
✅ Privacy-First - Only non-sensitive error information is sent
✅ Opt-Out - Can be disabled in configuration
✅ Obfuscated Webhook - URL is base64-encoded
✅ Automatic Sanitization - Removes emails, paths, tokens, and IPs
✅ Intelligent Filtering - Excludes user configuration errors and false positives
✅ System Information - Includes version, platform, architecture for debugging
What's Sent
- Error message (sanitized)
- Stack trace (truncated, sanitized)
- Bot version
- Operating system and architecture
- Node.js version
- Timestamp
What's NOT Sent
- ❌ Email addresses (redacted)
- ❌ File paths (redacted)
- ❌ IP addresses (redacted)
- ❌ Tokens/API keys (redacted)
- ❌ Account credentials
- ❌ Personal information
Filtered Errors
The system intelligently filters out:
- User configuration errors (missing files, invalid credentials)
- Expected errors (no points, already completed)
- Network issues (proxy failures, port conflicts)
- Account-specific issues (banned accounts)
Configuration
In config.jsonc:
"errorReporting": {
"enabled": true, // Set to false to disable
"webhookUrl": "aHR0cHM6Ly9kaXNjb3JkLmNvbS9hcGkvd2ViaG9va3MvMTQzNzExMTk2MjM5NDY4OTYyOS90bHZHS1phSDktckppcjR0blpLU1pwUkhTM1liZU40dlpudUN2NTBrNU1wQURZUlBuSG5aNk15YkFsZ0Y1UUZvNktIXw=="
}
Disable Error Reporting
Set enabled to false:
"errorReporting": {
"enabled": false,
"webhookUrl": "..."
}
Privacy & Security
- No PII is sent
- All sensitive data is automatically redacted
- Webhook URL is obfuscated (base64)
- Fire-and-forget (never blocks execution)
- Silent failure if webhook is unreachable
Technical Details
- File:
src/util/ErrorReportingWebhook.ts - Integration: Automatic via
Logger.ts - Method: HTTP POST to Discord webhook
- Timeout: 10 seconds
- Filtering: Pattern-based false positive detection
Thank you for helping improve the bot! 🙏