Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi.

Utiliser la CLI pour les moniteurs

Présentation

Vous pouvez utiliser la SUSE® Observability CLI pour inspecter, exécuter et modifier les moniteurs :

sts monitor
Manage, test and develop monitors.

Usage:
  sts monitor [command]

Available Commands:
  apply       Create or edit a monitor from STY
  clone       Clone a monitor
  delete      Delete a monitor
  describe    Describe a monitor in STY format
  disable     Disable a monitor
  edit        Edit a monitor
  enable      Enable a monitor
  list        List all monitors
  run         Run a monitor
  status      Get the status of a monitor

Use "sts monitor [command] --help" for more information about a command.

Nettoyage des moniteurs

Vous pouvez utiliser diverses commandes SUSE® Observability CLI pour nettoyer un moniteur.

Lister les moniteurs

La commande sts monitor peut lister tous les moniteurs :

sts monitor list
ID              | STATUS   | IDENTIFIER                                    | NAME                                          | FUNCTION ID     | TAGS
68172545000282  | ENABLED  | urn:stackpack:aad-v2:shared:monitor:aad-http- | AAD: HTTP 4xx error rate (req/s)              | 208329585629344 | []
                |          | 4xx-error-rate                                |                                               |                 |
129505918833814 | DISABLED | urn:stackpack:aad-v2:shared:monitor:aad-http- | AAD: HTTP 4xx response time (s) (95th percent | 208329585629344 | []
                |          | 4xx-response-time-95th-percentile             | ile)                                          |                 |
214616421668585 | ENABLED  | urn:stackpack:aad-v2:shared:monitor:aad-http- | AAD: HTTP 5xx error rate (req/s)              | 208329585629344 | []
                |          | 5xx-error-rate                                |                                               |                 |

Décrire les moniteurs

Vous pouvez obtenir la définition d’un moniteur existant en utilisant la commande describe :

sts monitor describe --id 68172545000282
_version: 1.0.93
nodes:
- _type: Monitor
  arguments:
    telemetryQuery: sum(rate(podparty_http_requests_count{code='4xx', direction='incoming', intra_pod!='true', local_pod_ns='${tags.namespace}', __multi__="${properties.local_pod_metric_selector__+}"}[${__rate_interval}]))
    topologyQuery: (label = "stackpack:kubernetes" and type = "service")
  description: Consumes health states from the AAD.
  function: urn:stackpack:aad-v2:shared:monitor-function:aad
  id: -6
  identifier: urn:stackpack:aad-v2:shared:monitor:aad-http-4xx-error-rate
  intervalSeconds: 60
  name: 'AAD: HTTP 4xx error rate (req/s)'
  remediationHint: It's complicated.
  status: ENABLED
  tags: []
timestamp: 2026-01-14T11:30:40.470998684Z[Etc/UTC]

Exécuter des moniteurs

Exécuter un moniteur vous donne un aperçu des états de vérification qui sont produits :

sts monitor run --id <id>
appliedLimit: 100
checkStates:
  CheckStates:
    checkStates:
      - checkStateId: 91116839897294-preprod%1dev.preprod.stackstate.io-stackstate%1nightly-suse%1observability%1clickhouse%1shard0
        data: '{"displayTimeSeries":[{"name":"Metric and threshold","queries":[{"query":"sum by (cluster_name, namespace, statefulset) (increase(stackstate_clickhouse_backup_successful_uploads{kube_app_name=\"clickhouse\", cluster_name=\"preprod-dev.preprod.stackstate.io\", namespace=\"stackstate-nightly\", statefulset=\"suse-observability-clickhouse-shard0\"}[12h]))  or  sum by (cluster_name, namespace, statefulset) (stackstate_clickhouse_backup_number_backups_remote_expected{kube_app_name=\"clickhouse\", cluster_name=\"preprod-dev.preprod.stackstate.io\", namespace=\"stackstate-nightly\", statefulset=\"suse-observability-clickhouse-shard0\"}) * 0","alias":"Number of backups execution in 12h window","_type":"MonitorDisplayQuery"},{"query":"0.0","alias":"Threshold","_type":"MonitorDisplayQuery"}],"unit":"short","_type":"MonitorDisplayTimeSeries"}],"remediationHintTemplateData":{"componentUrnForUrl":"urn:kubernetes:%2Fpreprod-dev.preprod.stackstate.io:stackstate-nightly:statefulset%2Fsuse-observability-clickhouse-shard0","labels":{"cluster_name":"preprod-dev.preprod.stackstate.io","namespace":"stackstate-nightly","statefulset":"suse-observability-clickhouse-shard0"},"threshold":0.0},"_type":"MonitorSyncedCheckStateData"}'
        health: CLEAR
        name: Backup performed in the last 12 hours
        topologyElementIdentifier: urn:kubernetes:/preprod-dev.preprod.stackstate.io:stackstate-nightly:statefulset/suse-observability-clickhouse-shard0
...

Activer/désactiver les moniteurs

Un moniteur peut être activé ou désactivé. Activé signifie que le moniteur produira des résultats, désactivé signifie qu’il supprimera toute sortie. Utilisez les commandes suivantes pour activer/désactiver :

sts monitor disable --id 68172545000282
✅ Monitor 68172545000282 has been disabled

sts monitor enable --id 68172545000282
✅ Monitor 68172545000282 has been enabled

Détails d’exécution du moniteur

Les statistiques des exécutions de moniteurs et la latence dans le traitement des états de vérification résultants peuvent être obtenues avec la commande status.

sts monitor status --id 68172545000282

Monitor Health State count: 650
Monitor Status: ENABLED
Monitor last run: 2026-01-14 12:16:25.979 +0000 UTC

Monitor Stream errors:
No data to display.

Monitor health states mapped to topology:
HEALTHSTATE | COUNT
CLEAR       | 522
DEVIATING   | 0
CRITICAL    | 0
UNKNOWN     | 128

Monitor Stream metrics:
METRIC                                     | VALUE BETWEEN NOW AND 300 SECONDS AGO | VALUE BETWEEN 300 AND 600 SECONDS AGO | VALUE BETWEEN 600 AND 900 SECONDS AGO
latency (Seconds)                          | 42.345412844036574                    | 44.53073394495415                     | 46.725688073394615
messages processed (per second)            | 10.833333333333                       | 10.833333333333                       | 10.833333333333
monitor health states created (per second) |                                       |                                       |
monitor health states updated (per second) | 0.0033333333333333                    | 0.0033333333333333                    | 0.02
monitor health states deleted (per second) |                                       |                                       |

Monitor health states with identifier matching exactly 1 topology element: 650

Modifier les moniteurs

La manière recommandée de travailler est de stocker les moniteurs (et toute autre ressource personnalisée créée dans SUSE® Observability) sous forme de fichiers YAML dans a StackPack. À partir de là, les modifications peuvent être appliquées manuellement ou entièrement automatisées en utilisant le CLI SUSE Observability dans un système CI/CD comme GitHub Actions ou GitLab Pipelines.

Créer un moniteur

Vous pouvez créer un moniteur en appliquant un fichier YAML, par exemple monitor.yaml. Il doit avoir le schéma suivant :

nodes:
- _type: "Monitor"
  ...

Notez l’entrée nodes: sur la première ligne. Ce n’est pas nécessaire pour les fichiers dans un StackPack, mais cela doit être présent lors de l’utilisation de la commande apply.

Utilisez SUSE Observability CLI pour créer ou mettre à jour le moniteur :

sts monitor apply -f monitor.yaml

Vous pouvez vérifier les résultats du moniteur sur la page de synthèse du moniteur.

L’identifiant est utilisé comme clé unique d’un moniteur. Changer l’identifiant créera un nouveau moniteur au lieu de mettre à jour l’existant.

Supprimer un moniteur

Pour supprimer un moniteur, utilisez

sts monitor delete --id <id>

Édition en direct d’un moniteur

Pour modifier un moniteur, éditez l’original du moniteur qui a été appliqué, puis appliquez à nouveau. Ou il existe une commande sts monitor edit pour modifier le moniteur configuré directement dans l’instance SUSE® Observability :

sts monitor edit --id <id>

Le <id> dans cette commande n’est pas l’identifiant mais le nombre dans la colonne Id de la sortie sts monitor list.