synth-investigate-check

Diagnose Synthetic Monitoring check failures by triaging probe data and classifying root causes.

1|Updated May 25, 2020
One-click install
npx skills add https://github.com/titaneric/dotfiles --skill synth-investigate-check-titaneric
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: synth-investigate-check
Source: https://github.com/titaneric/dotfiles/tree/main/dot_agents/skills/synth-investigate-check
Command: npx skills add https://github.com/titaneric/dotfiles --skill synth-investigate-check-titaneric

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? When a Synthetic Monitoring check starts failing, operators need to quickly determine whether the target is down, a region is unreachable, a certificate is expiring, or the check itself is misconfigured. This Skill automates that triage by pulling probe status, timelines, and Prometheus metrics through the gcx CLI and classifying the failure mode. ## Core Features & Use Cases - Structured Investigation Workflow: Runs a seven-step process from status check and early exits through timeline triage, per-probe breakdown, and failure classification. - Failure Mode Classification: Maps probe signals to eight failure modes including target down, regional/CDN, SSL/TLS, DNS, timeout, content/assertion, private probe infra, and rate limiting. - PromQL Pattern Library: Ships reference queries for probe success rates, HTTP phase latency, and certificate expiry that run via gcx metrics commands. - Use Case: A user asks "why is my checkout check failing?" The Skill resolves the check ID, shows a timeline graph, identifies that only EU probes are failing, classifies it as a regional/CDN issue, and lists concrete next actions. ## Quick Start Ask the assistant to investigate why your synthetic check is failing by giving the check name or ID, for example: investigate why my homepage HTTP check is failing.

Frequently Asked Questions about synth-investigate-check

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I investigate why a synthetic monitoring check is failing?

Start with gcx synthetic-monitoring checks status <ID> to get the success rate, then view the timeline graph to see the failure pattern. The Skill classifies the failure by cross-referencing probe data against eight failure modes and reports a diagnosis with next actions.

How to find which probes are failing for a synthetic check?

Run a per-probe PromQL query: avg by (probe) (probe_success{job="<job>",instance="<target>"}) via gcx metrics query. Cross-reference failing probe IDs against gcx synthetic-monitoring probes list to map them to geographic regions.

What does it mean when all synthetic monitoring probes fail at once?

All probes failing simultaneously indicates a target-side issue rather than a network problem. Common causes are the service being down, connection refused, DNS resolution failure, or an expired TLS certificate, which the Skill distinguishes using HTTP response and phase latency signals.

Can I check SSL certificate expiry from synthetic monitoring metrics?

Yes, query (probe_ssl_earliest_cert_expiry - time()) / 86400 to get days until the earliest certificate expires. Values under 14 days indicate an upcoming expiry risk, and negative values mean the certificate has already expired.

Why does my synthetic check show no data or NODATA?

NODATA means no Prometheus metrics are available for the check. First verify the check is enabled with gcx synthetic-monitoring checks get <ID>, then check the datasource configuration or SM stack health, and widen the timeline window before concluding NODATA.

When should I use synth-investigate-check versus managing the check config?

Use this Skill only for diagnosing failures and identifying root cause. If the diagnosis reveals the check configuration needs changes such as probe selection, frequency, or assertions, route that work to the synth-manage-checks skill instead.