hamsa software
← All articles
Automation7 min read

What the 08:45 alert needs to know

A stock feed due at 09:00 shows why deadlines, missing evidence and recovery belong in the alert rule itself.

A continuous angular signal crosses four concentric elliptical rings, suggesting an alert considered in relation to the time remaining before a deadline.

The alert arrives before the understanding

At 08:45 an alert says Integration error. The colleague who opens it has fifteen minutes until the stock feed is due, but the message leaves them finding the run, the business date and whether publication already succeeded. The interruption arrived before the information needed to use it. I would put that recovery context into the alert rule, rather than ask the recipient to assemble it while the deadline gets closer.

A useful alert lets someone make a small operating decision at a useful time. The failed request might be the right signal, or the approaching deadline might matter more. Sometimes the monitor itself has stopped reporting. Each can light up a graph; they do not call for the same response. Start with the consequence and the action, then choose the observation that can tell the recipient which situation they are facing.

Consider a fictional stock feed that a wholesaler needs published by 09:00. The feed normally finishes before 08:30, but there is no reason to interrupt someone at 08:01 merely because a job is running. At 08:45, fifteen minutes remain for recovery. At 09:00, the customer-facing catalogue may still contain yesterday’s stock. These are different states with different decisions attached.

I would design the alert backwards from that last consequence. What must somebody know to decide whether to rerun, investigate or publish a controlled fallback? Which observation proves the feed is usable? And how much time does the recovery actually need? The answer determines the signal, rather than the dashboard determining the business promise.

A completed process is not a published feed

Give the feed a run identity and record the business date it is meant to serve. A worker exiting successfully is useful diagnostic evidence, but it does not prove the correct date reached the catalogue. The worker might have processed an empty source, published to a test destination or finished while a later publishing stage remained blocked.

For this example, define usable completion as a validated feed for the expected business date, acknowledged by the production publishing boundary. Validation should reflect the contract: perhaps required identifiers are present and the record count is explained. Do not invent a universal minimum count if a genuine quiet day can contain fewer records. A threshold should describe something the business is prepared to interpret.

At 08:45 the proposed rule looks for a usable publication for the expected business date. Include that date, the latest usable date, the current run and its last meaningful progress in the notification. Link to that run’s production acknowledgement. The recipient can then investigate a particular missing outcome, rather than opening a list of recent jobs and guessing which red entry caused the phone to interrupt them.

The expected publication calendar also belongs in the rule. A bank holiday or planned maintenance day may have a different commitment, but that exception should be explicit and bounded. Otherwise someone eventually silences the whole alert to accommodate one unusual morning and forgets to restore it. Record the applicable timezone and who may change the calendar; a perfectly evaluated 08:45 rule can still be wrong if it uses the wrong clock or expects a feed on a day the business never promised one.

The technical implementation can use a scheduler, metrics or another monitoring system. Prometheus, for example, distinguishes a pending alert from one that has remained active for a configured duration. That timing mechanism is useful, but it does not supply the domain rule. Waiting five minutes on a stale series is not automatically equivalent to protecting a 09:00 publication deadline.

Separate absence of success from absence of evidence

Suppose the telemetry exporter stops at 08:20 while the feed carries on. No new failures appear, but no new observations appear either. Depending on the expression, the alert may even resolve when its input series disappears. That would be a particularly quiet way for monitoring to lose track of the job. Check freshness explicitly before using silence as evidence that the expected publication is healthy.

Keep two questions separate: is the expected feed known to be usable, and is the observation channel sufficiently current to answer that question? A missing heartbeat may justify a monitoring investigation. A known publication miss may justify a business recovery action. The messages can be related without pretending they establish the same fact.

Fresh telemetry and a usable publication are separate facts

The alternative 08:45 path considers an exporter that stopped at 08:40.

Scroll sideways to see all columns.

ObservationSupported conclusionFirst investigation
Telemetry fresh; no usable feedPublication is not establishedInspect run and publishing acknowledgement
Telemetry stopped at 08:40Current publication state may be unknownCheck observation path and destination
Worker restartedExecution resumedStill establish usable feed for expected date
The recovery warning cannot resolve solely because its input series disappears.

When the observation channel goes quiet

In an illustrative normal recovery, telemetry is fresh at 08:30 while the feed runs. At 08:45 there is still no usable publication, triggering the warning. A worker restarts at 08:48 and production acknowledges a usable feed at 08:52. That acknowledgement supports resolving the business condition even though the earlier error remains recorded. The recovery signal follows the required outcome rather than the worker's latest log message.

Change the example so telemetry stops at 08:40 and no publishing acknowledgement is available. At 08:45 we do not know whether the feed is usable. The operator may need to inspect the destination directly. Include that version when reviewing the rule: it tests whether the warning can notice a failure in the component it relies on for its observations, rather than simply following the more reassuring timeline where every message arrives.

A warning can be correct before the deadline is missed

An illustrative 09:00 stock-publication deadline with fifteen minutes reserved for investigation and recovery.

  1. 08:30Observe

    Run still active; telemetry current. No usable publication yet.

  2. 08:45Warn

    Expected date remains unpublished; recovery allowance begins.

  3. 08:48Investigate

    Worker restarts, but publication is still unproven.

  4. 08:52Resolve

    Production acknowledges validated feed for the expected date.

Synthetic times. Resolution depends on an acknowledged usable publication, not merely on a restarted worker.

Group symptoms around the affected publication

A broken upstream feed may produce failures in validation, publication and catalogue refresh. Sending three pages to the same person does not necessarily add information. Group related symptoms around the affected feed and date, while preserving enough detail to distinguish independent failures. The grouping key is part of the operating design.

Avoid using a new request identifier as the incident identity if every retry would create a fresh alert. The colleague needs to see that the same business publication is still at risk. Keep attempt identities available for diagnosis underneath that stable case. Equally, do not group every feed in every region into a single message if different teams and deadlines apply.

The Google SRE monitoring chapter argues for clear, actionable alerts and warns about the cost of excessive interruptions. For a small team, the implication is practical rather than fashionable: decide whether the condition needs an immediate interruption, a workday ticket or a later review. Calling every anomaly urgent does not create extra capacity to respond.

Opening the affected feed run and checking its production acknowledgement is a sensible first action when publication is uncertain. Immediately rerunning it may duplicate work still in flight or send the same corrupt source through another attempt. Let recovery controls follow the established state of the run. The urgent notification should help someone acquire the missing information; it should not itself become the reason another publication is considered safe.

Test the rule’s interpretation

Write a small timeline table before wiring the alert to a phone. Include a normal completion, a late but recovered run, a known deadline miss, a telemetry gap and a quiet day with legitimately low stock. For each row, record when the warning fires, when it resolves and which action the recipient should take. These expected decisions are more useful than a screenshot of a green status panel.

Test the boundary around the deadline explicitly. If the business accepts a publication at 08:59, the recovery warning may still have been correct at 08:45. A warning that prompted useful investigation is not disproved because the final deadline was met. Conversely, repeated warnings for runs that safely finish without intervention may indicate the recovery allowance or escalation route needs adjustment.

Alert recovery messages deserve the same care as failure messages. Say which feed and date became usable and whether any customer-facing impact remains to be checked. Do not announce “all clear” merely because a process restarted. If a fallback was published, the incident may still need a controlled replacement even though the immediate deadline has been protected.

For this feed, an 08:45 warning can be right even if production recovers at 08:52 and the 09:00 promise is kept. It bought time to act. Keep the date, current observations and recovery evidence together so the next colleague can tell that story, or identify a monitor that went quiet instead. Then changing a noisy or late rule becomes a discussion about available recovery time, rather than another adjustment to a threshold nobody can connect to the catalogue.

Working on a workflow like this? Hamsa helps finance and operations teams connect their tools and handle the exceptions, starting with one workflow.

See the Payment Operations Pilot

References & further reading

Primary sources behind this article. Living documentation may change.

  1. Prometheus: Alerting rules
  2. Rob Ewaschuk: Monitoring Distributed Systems
Hamsa Jama

Practical engineering. A human perspective.

More about Hamsa Software and the person behind it. Editorial notes.

A few more things
worth a read.

Back to the reading room
Automation6 min read

A budget that three workers can share

Enforce task limits through atomic reservations and repeat-safe settlement, including the uncomfortable case where a timed-out operation may still be spending.

Automation7 min read

What exactly did that approval authorise?

Bind an assistant’s approval to the action, target and material revision, then enforce that binding when the write happens.