An incident timeline connects time-stamped evidence to user and validator impact. Record when the problem was observed, when it likely began, what changed and how recovery was verified. Keep event time separate from alert time, and describe uncertain causes as hypotheses until the evidence supports them.

Define the incident by the affected service

A validator incident can affect participation, scheduled production, admission, local RPC or a monitoring service. These are related but different scopes. An unavailable dashboard does not by itself establish an unavailable validator.

Identify the cluster, identity, vote account, host role and affected interval. State the observed impact: for example, a provider reported missing participation while local metrics showed replay lag.

Record what remains unknown. A source gap, unsynchronised clock or missing log limits how precisely you can place events. Keep that limitation attached to the evidence rather than filling the gap with a neat story.

A useful timeline can begin before you know the cause. Preserve observations first, then test explanations.

Keep event, observation and detection time separate

A source event may have happened at 12:02, arrived at your collector at 12:03 and triggered an alert at 12:04. Those three times measure different parts of the system.

Store UTC timestamps with timezone and the originating clock where relevant. Preserve slot, blockhash or other chain context alongside time when available. A slot number is not a wall-clock timestamp.

Check host clock synchronization and collector delay. If a log uses local time, convert it explicitly and keep the original value for investigation.

State the precision. An alert sampled every minute cannot establish a failure's exact onset to the millisecond merely because the log format has that many digits.

Work through a small incident record

Choose an illustrative incident, not a report about SolanaBull. At 12:00 UTC, local replay lag begins rising. At 12:02, an external participation source first changes its status. At 12:03, the alert reaches the operator.

At 12:05, the operator observes disk latency and a growing backlog. At 12:08, a documented intervention begins. At 12:11, replay progress catches up. At 12:13, the external source reports current participation again.

The timeline supports several durations: detection delay, intervention time and observed recovery interval. It does not prove that disk latency was the root cause solely because it appeared near the failure.

Keep the 12:11 local recovery and 12:13 external observation separate. They can differ because the service measures another condition or updates later.

Observation and causal explanation need different evidence

Observation and causal explanation need different evidence. Observed record: Source and event time, Metric definition, Actual intervention and result. Causal assessment: Candidate failure path, Supporting and contrary evidence, Unresolved gaps stay visible.
Preserve source timestamps, clock uncertainty and evidence for or against each hypothesis.

Correlate independent evidence without blending it

Useful inputs include process logs, resource metrics, connectivity, replay progress, admission state, client version, local changes and independent provider observations.

Preserve query definitions and source timestamps. A chart with a five-minute average can hide a short spike shown by second-level logs. Align windows before comparing them.

Inspect the official network status record for a broader incident, and compare other validators or services when appropriate. No published status incident is not proof that an individual node had no local issue.

Export only the evidence needed for analysis. Remove secrets and unnecessary personal data from a public report while preserving the actual diagnostic values and definitions.

Separate symptom, contributing factor and cause

A stopped process is a symptom. A deployment may be a candidate trigger. A reproducible incompatibility or a specific verified failure path can support a causal explanation.

List the evidence for and against each plausible explanation. Compare configuration changes, software release notes and resource behaviour. Avoid attributing the incident to a client upgrade solely because the upgrade happened earlier that day.

When the evidence cannot isolate one cause, publish the narrower supported finding. An honest unresolved interval is more useful than a confident unsupported diagnosis.

Link corrective work to the failure path: capacity changes for demonstrated resource exhaustion, deployment checks for a confirmed configuration error, or improved telemetry for a missing signal.

Verify recovery and leave a reusable record

Define recovery through the affected service's healthy condition. A running process, caught-up replay, current admission and restored external participation can each need a separate check.

Record the impact interval under its definition, interventions, current outcome and follow-up owner. If the onset is uncertain, report a bounded interval rather than one invented precise time.

Test alerts and procedures against the incident. Verify whether the first actionable signal reached someone who could act, and whether an earlier warning was available.

Retain the original evidence and a concise public account when appropriate. Future comparisons need source continuity, not just a final green badge.

Common questions

Should detection time be used as the start of downtime?

Only if that is the stated metric. The failure may have begun before the alert, and evidence can establish a different onset interval.

Does a restart prove recovery?

It proves an intervention occurred. Verify the actual service condition and participation separately.

Must the report identify one root cause?

Use the strongest explanation supported by evidence. If the cause remains unresolved, say what is known and what evidence is missing.

Sources and documentation

Found an error or an outdated detail? Send a correction.