L'écran Santé des actifs se remplit depuis vos sondes existantes. TOONAH n'impose aucun agent : vous poussez l'état de vos actifs sur une interface HTTP, depuis Zabbix, Datadog, Prometheus, Nagios ou un simple script.
Un état de santé se rattache à un actif de votre CMDB. Déclarez-les d'abord dans Mes incidents → CMDB, en marquant ceux qui sont critiques.
ik_<tenant>_<secret>.Une requête POST vers /v1/observability/inbound,
avec la clé en en-tête.
# Un actif
curl -X POST https://app.toonah.io/v1/observability/inbound \
-H "X-Integration-Key: ik_VOTRE_TENANT_VOTRE_SECRET" \
-H "Content-Type: application/json" \
-d '{
"asset": "API ToonaPay",
"status": "up",
"latency_ms": 142,
"error_rate": 0.002,
"source": "prometheus"
}'
curl -X POST https://app.toonah.io/v1/observability/inbound \
-H "X-Integration-Key: ik_VOTRE_TENANT_VOTRE_SECRET" \
-H "Content-Type: application/json" \
-d '{
"items": [
{ "asset": "API ToonaPay", "status": "up", "latency_ms": 142 },
{ "asset": "Base clients", "status": "degraded", "latency_ms": 2100,
"error_rate": 0.08 },
{ "asset": "Passerelle SMS", "status": "down" }
]
}'
| Champ | Description |
|---|---|
| asset | Nom de l'actif tel qu'il figure dans la CMDB.
Alternative : name, ou ci_id si vous
connaissez l'identifiant interne. |
| status | up, degraded,
down. Toute autre valeur est traitée comme
unknown. |
| latency_ms | Temps de réponse en millisecondes. Facultatif. |
| error_rate | Taux d'erreur entre 0 et 1 — 0.08
pour 8 %. Facultatif. |
| metrics | Objet libre pour vos mesures supplémentaires : CPU, mémoire, file d'attente. Facultatif. |
| source | Nom de votre outil de supervision, pour tracer l'origine. Facultatif, 60 caractères. |
| checked_at | Horodatage de la mesure. Par défaut, l'heure de réception. |
{"ok":true,"ingested":3,"unresolved":0}
— unresolved compte les éléments dont l'actif n'a pas été
retrouvé. S'il n'est pas nul, vérifiez que le nom correspond exactement à
celui de la CMDB.Quelques lignes suffisent à surveiller un service et à pousser son état.
#!/usr/bin/env bash # Sonde HTTP simple, a lancer par cron toutes les 5 minutes. CLE="ik_VOTRE_TENANT_VOTRE_SECRET" ACTIF="API ToonaPay" URL="https://api.exemple.org/health" debut=$(date +%s%3N) code=$(curl -s -o /dev/null -w '%{http_code}' --max-time 10 "$URL" || echo 000) latence=$(( $(date +%s%3N) - debut )) # L'etat se deduit du code et de la latence. if [ "$code" = "200" ] && [ "$latence" -lt 1000 ]; then etat="up" elif [ "$code" = "200" ]; then etat="degraded" else etat="down" fi curl -s -X POST https://app.toonah.io/v1/observability/inbound \ -H "X-Integration-Key: $CLE" \ -H "Content-Type: application/json" \ -d "{\"asset\":\"$ACTIF\",\"status\":\"$etat\",\"latency_ms\":$latence,\"source\":\"cron\"}"
L'écran Santé des actifs affiche l'état de chaque actif surveillé, sa latence, son taux d'erreur et l'heure de la dernière vérification. Les actifs critiques non surveillés apparaissent comme tels — un actif critique sans sonde est un angle mort.
Ces états alimentent aussi la continuité d'activité : un actif rattaché à un plan de continuité et durablement indisponible signale que le plan devrait s'activer.