Build1 distinct publisher3 min readPublished
Oracle's own troubleshooting material explains why that alarm fires and then clears, and the repair is arithmetic rather than threshold tuning. The same class of defect hides in dimension filters and in subscriptions nobody confirmed.
The Engineer · Build desk

Compiled by The EngineerSomething wrong?How this is made
The interval mismatch is arithmetic. Put a one-minute alarm interval on a metric that emits hourly and you get 60 evaluation windows an hour, 59 of which contain no new data point [16]. Oracle's documented symptom is an alarm that fires and then clears at the next interval even though the last data point exceeded the threshold [3]. The alarm is behaving correctly on the data it can see. It is asking for data at a rhythm the metric cannot supply [4]. The stated fix is to read the metric's documented emission frequency and set the interval to match or exceed it [5], which presumes the frequency is written down somewhere you can check, and the validation list accepts metric documentation or a chart review as the evidence [18].
Dimensions fail in the other direction. The query is valid and returns a healthy stream, just not for the resource you meant. Filter on the wrong compartment, availability domain, resource ID or pool and the alarm sits in OK while the real resource degrades [7]. The ordering in the source is the part worth copying: confirm scope before touching thresholds, because a precise threshold on the wrong resource buys nothing [8]. Threshold tuning is the enjoyable part, which is presumably why it gets done first.
Absence alarms are where the documented semantics earn their keep. Oracle's `absent()` returns 1 while the metric is missing for the entire interval and 0 when it is present [9]. After continuous true values across the configured absence detection period, the statistic stops returning values [10]. The default period is two hours, configurable from one minute through three days [11], a range of 4320 to 1 measured in minutes, with the default sitting 120 times above the floor [17]. On that documented behaviour, an escalation path slower than the period you chose can outlast the true values it depends on. That is a question about your escalation clock as much as about the alarm.
The `groupBy` recommendation is the detail I would not have guessed. Oracle advises including it in absence queries because a dimension OCI introduces later can create an initially empty metric stream, and an empty stream reads as absent even while every other stream reports [12]. The example query pins `resourceId` in the filter and then groups by it [13]. That is a query hardened against the platform's own future schema changes, and it is good craft to write the reason down next to it.
The notification check is the cheapest one and the most likely to be waved through. An alarm can point at the correct topic and deliver nothing, which is why the list keeps "topic is the intended one", "subscription is confirmed" and "test alarm or controlled trigger was received" as separate lines [15]. Those are three states of the same path. The received test message is the one that counts as evidence [14].
For any of this to transfer to your estate, two things have to hold: the metrics you alarm on need a published emission frequency you can look up, and you need permission to run a controlled trigger where it counts, since the source asks for a controlled absence test where safe plus alarm history showing the expected transition [19]. The list is short enough to run in an afternoon, and what it produces is a record rather than an assertion [1].
Ranked by verification strength, evidence, and original report placement.
The dev.to article by Arnold Infant is written from an OCI readiness and validation point of view rather than as a step-by-step Console walkthrough, aiming to identify checks that should be confirmed before an alarm is treated as production-ready.
An OCI alarm can be created correctly and still fail as an operating control; the cause may be the metric interval, a wrong dimension, an unconfirmed notification subscription, an absence query that fires for the wrong reason, or a message that reaches the team without telling them what action to take.
OCI documents a troubleshooting case where an alarm fires and then clears at the next interval even though the last data point exceeded the threshold, caused by the alarm interval being shorter than the metric's emission frequency.
The worked example: if a metric is emitted hourly, an alarm interval that evaluates every minute may not behave the way the owner expects.
The readiness check is to confirm the metric's documented emission frequency and set the alarm interval at the same frequency or longer when needed.
The interval validation list covers metric namespace, metric name, emission frequency for the selected metric, alarm interval in the MQL query, the statistic used (mean, max, sum or percentile), and expected FIRING and OK behaviour during testing.
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · August 29, 2026
Follow any of these and your For You feed starts watching them — no settings page required.
build
Three manual interventions in a month, and every guard was working as designed1 distinct publisher
build
Six MariaDB versions, one real difference: the only reason to leave 10.6 is the July 2026 clock1 distinct publisher
product
Rillet's $100M reads as proof mid-market ERP is rip-and-replace, mostly at the cheap end1 distinct publisher
build
Force the tool call, then hand Lightsail a long-lived key1 distinct publisher
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Oracle's docs, one hop removed
The spine of this story is vendor documentation — the fire-then-clear interval case, absent() returning 1 or 0 and then nothing, the two-hour default, the groupBy warning — and we have all of it secondhand from Arnold Infant with not one link to check the wording against. What survives unaided is the arithmetic: 60 windows an hour with 59 of them empty, and a configurable absence range of 1 to 4,320 minutes. Those a reader can verify sitting still. The rest is a careful restatement asking to be trusted, and where Oracle's own pages disagree with each other on suppression the post can only report the ambiguity.
No usage signal to read
Nobody in this story is doing anything. There is no team reporting that its alarms failed this way, no incident, no release, no product change — the whole piece argues from documentation and one practitioner's review habit, so there is nothing to measure about uptake.
Sold below its worth
An alarm that reads OK because it keeps asking an hourly metric for minute-by-minute answers is a genuinely nasty failure — it fails silent — and dev.to delivers it in the flattest register available, six sections and a bulleted list, claiming no novelty for any of it. The undersell is the missing sentence: how often this mismatch actually shows up in a real estate. Without it, the piece reads like hygiene advice rather than the audit item it is.
A résumé, not a pitch
One individual byline on dev.to, nothing being sold, no vendor logo anywhere near it. What that leaves is the mild pull of expertise on display — checklists are a good way to look like someone who has run production — and it shows in the volume of validation bullets relative to worked examples. It gives no one a reason to bend a specific claim about Oracle's interval behaviour.
One voice, mostly quoting
Everything hangs on a single post. The parts we can test from inside it — the arithmetic, the internal consistency between each section's checks and its evidence list — hold up, and the documentation restatements are the kind of claim an author has little motive to distort. But no second publisher touches this, the vendor pages are not linked, and one item, the advice to review scope before tuning thresholds, is pure opinion. Corroboration or citations would move this materially.