sng monitor
Fonctionnalité en cours de déploiement. L'interface décrite ici est celle de la prochaine livraison : elle peut encore évoluer, et n'est pas forcément activée sur votre tenant.
Les commandes sng monitor sont en cours de diffusion dans la CLI, et la supervision en cours de déploiement.
Le groupe sng monitor est un raccourci pour gérer les manifestes
Monitor de l'état désiré : create
écrit et applique le manifeste, list et delete équivalent à sng kind list Monitor et
sng kind delete Monitor NAME. Les canaux de notification et les pages de statut n'ont pas de
commande dédiée : générez-les avec sng template gen NotificationChannel|StatusPage puis
sng apply.
Les flags globaux (--config, --json, -v, --version) sont décrits dans
l'index de la CLI. Toutes les commandes exigent une session de tenant
(sng tenant use NAME), comme pour sng apply.
Actions IAM :
| Commande | Action IAM | Route |
|---|---|---|
list | deploy:list | GET /v1/resources/Monitor |
create | deploy:write | POST /v1/apply |
delete | deploy:delete | DELETE /v1/resources/Monitor/{name} |
sng monitor list
sng monitor list
Liste les manifestes Monitor du tenant courant. N'affiche pas l'état des
moniteurs : voir la page de statut.
| Flag | Type | Défaut | Description |
|---|---|---|---|
| (aucun flag propre) |
sng monitor list
NAME KEY UPDATED
api acme/…/Monitor/api.yml 2026-10-07T10:02:11Z
db acme/…/Monitor/db.yml 2026-10-07T10:03:48Z
Sans moniteur : no Monitor.
Sortie --json : {"kind": "Monitor", "items": [{"name": "api", "key": "…", "updated_at": "…"}]}.
sng monitor create
sng monitor create NAME (--http URL | --tcp HOST:PORT | --dns SERVER --query NAME)
[--interval D] [--timeout D] [--threshold N] [--expect CODES]
[--contains TEXT] [--channel NAME]... [--display-name TEXT] [--dry-run]
Écrit un manifeste Monitor et l'applique. Exactement une cible :
--http URL: check HTTP(S) ;--expect 200,204(défaut : tout 2xx),--contains TEXT. Une URLhttps://ajoutetls: {}: alertes avant l'expiration du certificat (14 et 3 jours).--tcp HOST:PORT: check de connexion TCP.--dns SERVER --query NAME: requête DNS (typeA) envoyée àSERVER.
Seules les cibles publiques sont acceptées : la plateforme refuse les adresses privées et les noms internes. Relancer la commande sur un nom existant remplace le manifeste.
| Argument | Description |
|---|---|
NAME | nom du moniteur : minuscules, chiffres et -, 63 caractères au plus |
| Flag | Type | Défaut | Description |
|---|---|---|---|
--http | string | URL http(s):// à vérifier ; identifiants dans l'URL refusés | |
--tcp | string | HOST:PORT auquel se connecter | |
--dns | string | serveur DNS interrogé (avec --query) | |
--query | string | nom résolu par le check DNS | |
--interval | string | 5m | 30s, 1m, 2m, 5m ou 10m ; le minimum dépend du tier (5 min en 3XS) |
--timeout | string | 10s | durée d'un check, de 1s à 30s, inférieure à --interval |
--threshold | int | 3 | échecs consécutifs avant la panne (1 à 5) |
--expect | liste d'entiers | codes HTTP acceptés (200,204) ; exige --http | |
--contains | string | texte que le corps HTTP doit contenir (256 caractères au plus) ; exige --http | |
--channel | string, répétable | NotificationChannel prévenu en cas de panne et de retour (10 au plus) | |
--display-name | string | NAME | libellé public sur les pages de statut (63 caractères au plus) |
--dry-run | bool | false | affiche le manifeste sans l'appliquer |
sng monitor create api --http https://api.example.com/health --expect 200 --channel ops
sng monitor create db --tcp db.example.com:5432 --interval 10m
sng monitor create resolver --dns ns1.example.com --query example.com --dry-run
monitor "api" declared in tenant acme: …
--dry-run :
apiVersion: monitoring.stackngo.io/v1alpha1
kind: Monitor
metadata:
name: resolver
spec:
type: DNS
target: ns1.example.com
interval: 5m
timeout: 10s
failureThreshold: 3
dns:
queryName: example.com
Sortie --json : {"uploads": [{"key": "acme/…/Monitor/api.yml", "kind": "Monitor", "name": "api", …}]}.
Pour les options absentes de la commande (méthode HTTP, en-têtes, bodyMustNotContain,
ipFamily, type de requête DNS, tcp.tls, seuils TLS, paused), écrivez le manifeste :
sng monitor create … --dry-run > api.yml, éditez, puis sng apply api.yml.
Erreurs :
| Message | Cause |
|---|---|
exactly one of --http, --tcp or --dns is required | aucune cible, ou plusieurs |
monitor name "…": lowercase letters, digits and '-' (63 max.) | nom invalide |
--interval "…": one of 30s, 1m, 2m, 5m, 10m | intervalle hors liste |
--timeout "…": between 1s and 30s | timeout hors bornes ou mal formé |
--timeout 30s must be below --interval 30s | timeout ≥ intervalle |
--threshold must be between 1 and 5 | seuil hors bornes |
--expect and --contains need --http | options HTTP sans --http |
--expect "…": HTTP status code expected | code non numérique ou hors 100–599 |
--http "…": http(s)://host/path expected | URL mal formée |
--http: credentials in the URL are refused | https://user:pass@… |
--tcp "…": HOST:PORT expected | port manquant ou hors 1–65535 |
--dns needs --query NAME, --query needs --dns | options DNS incomplètes |
--channel "…": NotificationChannel name expected | nom de canal invalide |
--channel: 10 channels max | plus de 10 canaux distincts |
sng monitor delete
sng monitor delete NAME [--yes]
Supprime le manifeste Monitor NAME de l'état désiré ; le moniteur cesse d'être sondé. Une
page de statut qui le liste encore est refusée ensuite : mettez-la à jour.
| Argument | Description |
|---|---|
NAME | nom du moniteur |
| Flag | Type | Défaut | Description |
|---|---|---|---|
-y, --yes | bool | false | confirme sans invite ; obligatoire hors terminal interactif |
sng monitor delete api
sng monitor delete test-alerte --yes
⚠ Suppression définitive du Monitor "api".
Tapez « oui » pour confirmer : oui
deleted: acme/…/Monitor/api.yml
Sortie --json : la réponse de l'API de suppression (key, …).
Erreurs : confirmation requise : relancez avec --yes ou depuis un terminal interactif,
opération annulée.
Voir aussi
- Guides : Moniteurs d'uptime, Canaux de notification, Page de statut
- Référence :
Monitor,NotificationChannel,StatusPage,sng kind,sng template