Migrating from PagerDuty
Switch from PagerDuty to NearIRM with this step-by-step guide
Overview
This guide helps you migrate from PagerDuty to NearIRM. The migration focuses on recreating your critical alerting configuration, not every PagerDuty feature.
Time estimate: 1-2 hours for a typical setup
Concept Mapping
Understanding how PagerDuty concepts translate to NearIRM:
| PagerDuty | NearIRM | Notes |
|---|---|---|
| Service | Integration | Where alerts come in |
| Escalation Policy | Notification Policy | How alerts are routed |
| Schedule | Schedule | Who's on-call |
| Team | Team | Groups of users |
| Incident | Alert | The actual alert |
| Maintenance Window | Suppression Window | Mute alerts temporarily |
| Event Rule | Matching Rule | Filter which alerts match |
What's Different
Simpler model: NearIRM combines PagerDuty's Services and Escalation Policies into a single Notification Policy with matching rules. Less configuration, same result.
Unified routing: Instead of assigning escalation policies to services, you define matching rules directly in policies. Alerts are routed based on content, not service assignment.
Migration Checklist
1. Create Teams
For each PagerDuty team you have:
- Create team in NearIRM (Teams > Create Team)
- Add team members
- Note which schedules reference this team
2. Create Schedules
For each PagerDuty schedule:
- Create schedule in NearIRM (Schedules > Create Schedule)
- Set rotation start day/time to match
- Add teams in rotation order
- Create overrides for any current exceptions
Tip: Start with your primary on-call schedule. Add secondary schedules later.
3. Create Integrations
For each PagerDuty service receiving alerts:
- Create integration in NearIRM (Settings > Integrations)
- Choose Grafana or Generic type based on source
- Copy the new webhook URL
See Webhook Formats for complete payload documentation.
4. Create Notification Policies
For each PagerDuty escalation policy:
- Create policy in NearIRM (Policies > Create Policy)
- Add matching rules based on what the PagerDuty service received
- Add escalation steps matching PagerDuty's escalation levels
- Set timeouts to match PagerDuty acknowledgment timeouts
5. Update Monitoring Tools
For each integration you created:
- Update Grafana/monitoring tool with new NearIRM webhook URL
- Test with a manual alert
- Verify alert appears in NearIRM
6. Configure User Preferences
Each team member should:
- Log in to NearIRM
- Go to Settings > Preferences
- Configure notification channels (email, push, WhatsApp)
- Verify WhatsApp number if using
Example Migration
PagerDuty Setup
- Service: "Production API"
- Escalation Policy: "Engineering On-Call"
- Level 1: Schedule "Primary On-Call" (5 min)
- Level 2: Team "Engineering Leads" (10 min)
NearIRM Equivalent
Integration: "Production API" (Grafana type)
Schedule: "Primary On-Call"
- Weekly rotation of Team Alpha, Team Beta
Policy: "Production Alerts"
- Matching Rules: (none - catches all from this integration)
- Step 1: Schedule "Primary On-Call", 5 min timeout
- Step 2: Team "Engineering Leads", 10 min timeout
Key Gotchas
No Service-Level Routing
PagerDuty routes by which service receives the alert. NearIRM routes by alert content (labels, severity).
Migration tip: Use labels in your alerts to identify the source, then match on those labels in policies.
Simpler Schedules
NearIRM has weekly team rotations. Complex schedules with multiple layers, different day/night shifts, or custom rotation periods need to be simplified.
Migration tip: Start with your primary rotation. Use overrides for exceptions.
No Stakeholder Notifications
PagerDuty's "Add Stakeholders" feature doesn't exist in NearIRM. Stakeholders who need visibility should be added to teams or use email subscriptions.
What NearIRM Does Better
- Simpler configuration - No separate services and escalation policies
- Transparent pricing - Know exactly what you'll pay
- Fast setup - Working alerts in minutes, not hours
- Essential features - The 80% you actually use, without the bloat
Need Help?
Migration support is included. Email [email protected] with:
- Your current PagerDuty setup (screenshot of services/policies)
- Questions about how to map specific configurations
See also: PagerDuty Alternative — Full Comparison