Resumen
Every 15 minutos, ejecutar un conocido consulta a traves de your agent pipeline y verify el respuesta contiene expected datos. Catches API degradation, auth expiry, y pipeline breaks antes de they affect usuarios.
Desencadenador
Every 15 minutos
Programación
Every 15 minutos
Pasos del flujo de trabajo
Ejecutar canary consulta
Ejecutar un conocido consulta ese deberia always return especifico resultados.
Validar respuesta shape
Verificar ese respuesta contiene expected campos y resultado conteo.
Verificar latencia
Measure tiempo de respuesta contra linea base umbral.
Alert on failure
Enviar alerta if validacion fails o latencia exceeds umbral.
Implementacion en Python
import requests, os, time
H = {"x-api-key": os.environ["SCAVIO_API_KEY"]}
CANARY_QUERY = "python programming language"
EXPECTED_DOMAIN = "python.org"
MAX_LATENCY_MS = 3000
def health_check():
start = time.time()
try:
r = requests.post("https://api.scavio.dev/api/v1/search",
headers=H, json={"platform": "google", "query": CANARY_QUERY}, timeout=10)
latency_ms = (time.time() - start) * 1000
data = r.json()
results = data.get("organic_results", [])
has_expected = any(EXPECTED_DOMAIN in r.get("link", "") for r in results)
return {
"status": "healthy" if has_expected and latency_ms < MAX_LATENCY_MS else "degraded",
"latency_ms": round(latency_ms),
"result_count": len(results),
"expected_found": has_expected
}
except Exception as e:
return {"status": "down", "error": str(e)}
print(health_check())Implementacion en JavaScript
const start = Date.now();
const r = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST", headers: {"x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json"},
body: JSON.stringify({platform: "google", query: "python programming language"})
});
const ms = Date.now() - start;
const data = await r.json();
const ok = data.organic_results?.some(r => r.link?.includes("python.org"));
console.log({status: ok && ms < 3000 ? "healthy" : "degraded", latency_ms: ms});Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA