Alert deduplication system map: the keys that join alerts, incidents, notes and rule changes

Short answer

Five joins rebuild one alert deduplication decision across systems: each alert to its group through a dedup key or label set, each group to its incident through an incident ID, each incident to the analyst's reasoning through its log entries, each incident to the configuration edit it prompted through a ticket or commit that cites it, and every timestamp to one normalized clock. Any join fails when an export drops the field it depends on.

Visual briefFull-size diagram
Five system nodes (alert rules repo, monitoring platform, incident tracker, chat, change system) arranged in a ring, with linking keys such as dedup_key, incident ID and change ticket travelling along the connectors to join one case in the center.
Illustrative. Which keys exist depends on each company's tools and configuration.

This system map belongs to the alert deduplication decisions guide. The guide is about timing; this page is about wiring: where each record sits, which identifier points to the next one and what a fully joined case looks like when every pointer holds.

Where each record lives

A typical operations center spreads one decision across five places. The table is the map: system, the record it holds, the key that links it onward and the usual owner. Tool names are examples; a company's own stack may differ.

SystemRecordLinking key to the next recordUsual owner
Alert rules repositoryAlert, grouping and inhibition rule versionsCommit ID, and an incident or ticket number in the commit messagePlatform or SRE team
Monitoring platform or event routerIndividual alerts and their group membershipdedup_key or grouping labels; group or alert IDOperations center
Incident trackerIncidents, merges, log entries, notesIncident ID; merged incidents point to their targetIncident management lead
ChatLive discussion during the incidentIncident ID or channel name typed into messagesOperations center, under the chat retention policy
Change or ticketing systemChange request that altered a ruleTicket number cited in the commit; incident ID cited in the ticketPlatform team lead

Ownership matters as much as the keys. Five owners means five retention policies and five people who decide what is kept when a tool is retired.

The five joins, one by one

1. Alert to group. In PagerDuty's Events API, trigger events that share a dedup_key join an open alert. A trigger without a key always opens a new alert, and the same key sent through two different integrations on one service is not merged. In Alertmanager, grouping works on labels. Either way, the key or label set is on the alert record. It is lost when only incidents are exported.

2. Group to incident. The incident ID is stored on the group, or the alert list is stored on the incident. Ask which side holds the link and check both. When incidents are merged in PagerDuty, the alerts move into the target incident, and the source incidents are resolved with the reason "Merged" and a reference to the target. That reference is itself a linking key, and it is the structured trace of a human decision.

3. Incident to analyst note. PagerDuty's REST API lists the log entries for one incident, with date filters, and lists notes through a separate operation. A complete join therefore needs both calls. Other trackers differ, so ask the operations center what its tools can export rather than assuming.

4. Incident to rule change. The change record or commit that altered grouping or inhibition should cite the incident. Alertmanager inhibition rules name source and target matchers and an equal list of labels that must match; a reviewer can only explain why those labels were chosen if the change points back to the incident. This join is often missing when a rule is edited directly in a console.

5. Chronology. Alert timestamps, incident timestamps and chat messages may come from three clocks and three time zones. A reviewer normalizes them to show that the merge happened before resolution, as a live judgment, not afterward as a tidy-up. The ITSM ticket history page covers how ticket timelines age.

One fully joined case (Illustrative)

Invented for this page. A fictional 600-person payments software company. Every identifier below is made up and shows the shape of the chain, not a real record.

StepRecordKey it carriesKey it links to
123 alerts, "card auth timeout", via the gateway integrationdedup_key gw-auth-eu2Alert group G-551
218 alerts, "ledger write slow", via the database integrationdedup_key db-ledger-eu2Alert group G-552
3Incidents INC-8810 and INC-8811 openedGroup IDs G-551, G-552Incident IDs
4INC-8811 merged into INC-8810; INC-8811 resolved as MergedTarget reference INC-8810INC-8810 log entries
5Note on INC-8810: "Both trace to the EU2 network partition"Incident ID INC-8810Chat thread named for INC-8810
6Change CHG-3307: inhibit ledger alerts while gateway partition alert fires, equal on regionCites INC-8810Commit a41f9c in the rules repository
7Commit a41f9c adds the inhibition ruleMessage cites CHG-3307Rule version history

Follow any row to the next and the case holds together. Remove step 6 and the commit becomes an unexplained edit. Remove the merge reference in step 4 and INC-8811 looks like a duplicate someone closed. Keys of this kind are what turn five exports into one account of a decision. The worked alert storm shows the same chain from the analyst's side.

Where joins break during a migration

  • Only incidents are exported. Group membership and dedup keys stay in the retired platform.
  • Integrations are rebuilt. New integrations can issue new keys, so old and new alerts for the same source no longer match.
  • Chat retention runs out. The note in the tracker survives; the discussion that produced it may not.
  • Rules move to a new syntax. Converted rules arrive without their commit history, so step 6 loses its origin.
  • Clocks are not recorded. Exports without time zone information make chronology guesswork.

Audit trails in other tools face the same problem; audit logging for MCP integrations is one example. Related record patterns are on decision records.

Test the map with the operations center, at metadata level

Ask the operations center director, without exporting anything: which of the five systems exist, since when, who owns each, whether commits and change tickets cite incident IDs, and when the old monitoring platform goes dark. Never collect alerts, notes, dashboards or credentials.

The company needs 50+ full-time employees at peak (contractors excluded), a documented operating history, rights to license the records and an authorized contact. Companies in the U.S., Canada and the EU qualify, as do companies in the UK, Australia, New Zealand, India, Singapore, South Africa, Latin America, the UAE and Saudi Arabia when at least 70% of the data is in English. Customer contracts, hostnames in alert payloads and employee names in notes all affect what could be licensed; that stays unknown until SourceX reviews it. For roll-ups that inherit several monitoring stacks at once, see MSP roll-ups and private equity. The referral brief template turns your answers into an introduction.

Next step

Refer a company. No cap on rewards. Default reward on a company's first qualifying transaction: the greater of $50,000 plus 5% and 15% of Actual Supplier Payout, with no cap; further qualifying transactions first agreed within 12 months of the first Closing pay 15%. Eligibility and payment conditions apply, including the USD 100,000 Minimum Transaction, and a signed Schedule A or addendum can differ. A lead, meeting or signature alone does not trigger payment.

If a client's alerts, incidents and rule changes still carry the keys that join them, register as a partner, check the company against who qualifies and read the program terms before you make the introduction.

  1. Step 1Share your linkSend your personal link to a company you know.
  2. Step 2Company appliesThe company applies itself at /apply.
  3. Step 3Company signs and is paidThe company signs, delivers its data and is paid by SourceX under its agreement.
  4. Step 4You get your rewardthe greater of $50,000 plus 5% and 15% of the actual supplier payout, with no cap. A reward becomes payable after SourceX has paid the referred company under its signed agreement and the payout conditions in the program terms are met, including finance approval and your tax and payment details.

Common questions

Which join is most often missing?

The last one, from a rule change back to the incident that prompted it. Rules edited directly in a console, or commits with no incident reference, leave a configuration history that cannot explain itself.

Should a partner test the joins themselves?

No. The company's own engineers can check whether keys survive an export. A partner asks whether the links exist and who owns each system, and never handles alert data or logins.

Sources

  1. developer.pagerduty.com/docs/events-api-v2/trigger-events/index.html
  2. developer.pagerduty.com/api-reference/b3A6Mjc0ODE0Nw-list-log-entrie…
  3. support.pagerduty.com/main/docs/edit-incidents
  4. prometheus.io/docs/alerting/latest/configuration
  5. refer.sourcex.si/terms

Free resources

Know a company with valuable proprietary data?

Become a referral partner, get your link and introduce the company’s CEO (in an owner-run company, usually the owner). Referral partners can join from most countries. We can't work with partners in countries or regions under U.S. sanctions or on U.S. restricted-party lists. The companies you introduce should be based in the U.S., Canada and the EU, or in the UK, Australia, New Zealand, India, Singapore, South Africa, Latin America, the UAE and Saudi Arabia with at least 70% of their data in English.

Refer a company →

I own a business

Explore licensing your company's data directly to SourceX for AI training and evaluation. Start a short assessment; no uploads needed.

Start an assessment