- orders: Column Removed
shipping_status(breaking) - orders: Column Added
tracking_number - customers: Column Removed
legacy_id(breaking)
Why Slack?
Slack is ideal for alerts that need quick team visibility:- Real-time: Alerts appear instantly in channels
- Contextual: Team can discuss and coordinate in threads
- Actionable: Click through to AnomalyArmor for details
- Flexible: Route different alerts to different channels
Prerequisites
Before you begin:- Admin access to your Slack workspace (or permission to install apps)
- AnomalyArmor account with alert configuration permissions
- At least one Slack channel where you want to receive alerts
Setup Guide
Step 1: Navigate to Destinations
- Log in to AnomalyArmor
- Click Alerts in the left sidebar
- Select Destinations tab
- Click Add Destination
Step 2: Select Slack
From the destination type list, click Slack.Step 3: Authorize with Slack
Click Connect to Slack to begin the OAuth flow. Slack will show a standard authorization dialog listing the permissions AnomalyArmor needs:| Permission | Why We Need It |
|---|---|
| Post to channels | Send alert messages |
| View channel list | Let you select destination channels |
| View workspace info | Display workspace name in AnomalyArmor |
AnomalyArmor requests only the minimum permissions needed to send alerts. We cannot read your messages, files, or private channels.
Step 4: Select Channels
After authorization, choose which channels can receive alerts:- Public channels: Any public channel in your workspace
- Private channels: Must invite the AnomalyArmor bot first
- Open the private channel in Slack
- Type
/invite @AnomalyArmor - The channel will appear in AnomalyArmor’s channel list
Step 5: Name Your Destination
Give the destination a descriptive name:Step 6: Test the Connection
Click Send Test Alert to verify everything works:Step 7: Save
Click Save to complete the setup. Your Slack destination is now ready to use in alert rules.Alert Message Format
AnomalyArmor Slack alerts are formatted using Slack’s Block Kit for rich, structured messages. Each alert type displays contextually relevant information.Schema Change Alerts
Schema change alerts show affected tables, breaking change counts, and detailed change lists: Breaking schema changes detected in warehouse 5 changes in 2 table(s) (2 breaking)| Field | Value |
|---|---|
| Rule | Production Schema Monitor |
| Severity | CRITICAL |
| Tables | orders, customers |
| Breaking | 2 changes |
- orders: Column Removed
shipping_status(breaking) - orders: Column Added
tracking_number - customers: Column Removed
legacy_id(breaking)
Freshness Violation Alerts
Freshness SLA violation alerts show overdue time, SLA thresholds, and last update times: Freshness SLA Violation Data is 4.5 hours overdue| Field | Value |
|---|---|
| Rule | Sales Freshness |
| Severity | HIGH |
| Asset | warehouse.sales |
| Overdue | 4.5 hours (2.3 intervals) |
| SLA Threshold | 2.0 hours |
| Last Update | 2025-12-28 10:30 UTC |
Message Components
| Component | Description |
|---|---|
| Color bar | Visual severity indicator (red for critical, orange for high, yellow for medium, blue for low) |
| Alert title | What happened with summary stats |
| Context fields | Rule name, severity, and event-specific details |
| Changes list | Detailed breakdown of changes (schema alerts) |
| View Details button | Link to view full alert details in AnomalyArmor |
| Footer | Alert ID and Rule ID for tracing |
Multiple Slack Destinations
You can create multiple Slack destinations for different use cases:| Destination | Channel | Use Case |
|---|---|---|
| Critical Alerts | #data-incidents | Breaking changes, SLA violations |
| Schema Changes | #data-changes | All schema drift notifications |
| Dev/Test Alerts | #data-dev | Non-production events |
| Team-Specific | #analytics-team | Alerts for specific assets |
Routing Example
Production Breaking Changes- Scope: production database
- Event: Schema change (column removed, table removed)
- Destinations: Slack #data-alerts, PagerDuty (for on-call)
- Scope: development database
- Event: Any schema change
- Destinations: Slack #data-dev
Best Practices
Channel Selection
Use dedicated alert channels
Use dedicated alert channels
Don’t send alerts to busy team channels. Create dedicated channels like
#data-alerts so alerts don’t get lost in conversation.Separate by urgency
Separate by urgency
Route breaking changes to a channel with notifications enabled. Route informational alerts (like new tables) to a quieter channel.
Consider channel membership
Consider channel membership
Make sure the right people are in the channel. Data engineers should be in
#data-alerts, but not necessarily all of #general.Alert Volume
Tips to reduce noise:- Start with critical alerts only
- Use email for low-priority events
- Set freshness SLAs with buffer (e.g., 2x expected update time, not too tight)
- Filter out expected changes (dev databases)
Thread Usage
AnomalyArmor posts each alert as a new message. To keep channels clean:- Create a thread on the alert to discuss
- Use reactions (👀 = investigating, ✅ = resolved)
- @mention teammates who need to see it
Troubleshooting
”Channel not found”
Cause: The channel was deleted, renamed, or AnomalyArmor lost access. Fix:- Verify the channel exists in Slack
- For private channels, re-invite the AnomalyArmor bot
- Edit the destination and reselect the channel
”Unable to post message”
Cause: Permission issues or Slack API errors. Fix:- Check that AnomalyArmor app is still installed in Slack
- Try removing and re-adding the Slack destination
- Verify your Slack workspace allows third-party apps
Alerts not appearing
Cause: Rule configuration or routing issues. Fix:- Check the alert rule is enabled
- Verify the rule’s scope matches the event
- Confirm the Slack destination is selected for the rule
- Use Send Test Alert to verify the connection
OAuth errors during setup
Cause: Permission or network issues. Fix:- Ensure you have admin permissions in Slack (or can request app installation)
- Disable browser popup blockers temporarily
- Try a different browser
- Contact your Slack workspace admin if apps are restricted
Security
Data Sent to Slack
Alert messages contain:- Asset names (table/column names)
- Change types (added, removed, modified)
- Timestamps
- Actual data values
- Database credentials
- Connection strings
- Query results
Revoking Access
To disconnect AnomalyArmor from Slack:- In Slack: Settings → Manage apps → AnomalyArmor → Remove
- In AnomalyArmor: Delete the Slack destination
Next Steps
Alert Rules
Create rules that route to Slack
Best Practices
Reduce alert fatigue
