Passer au contenu principal

Référence CLI Level

Reference for lvl command groups, output formats, pagination, resource references, and safety behavior.

Utilisez cet article comme carte de l'arborescence de commandes CLI Level. Pour les indicateurs exacts et la forme de sortie JSON dans votre version installée, utilisez l'aide normale ou la référence de compétence générée :

lvl --help
lvl skill describe

Par exemple :

lvl device list --help
lvl skill describe device list

Syntaxe de commande

La forme générale est :

lvl [--profile ] [arguments] [flags]

Afficher la liste des commandes de niveau supérieur :

lvl --help

Afficher toutes les entrées de référence générées :

lvl skill describe

Profils et authentification

Le CLI Level inclut un prod profil pour https://api.level.io.

La sélection du profil suit cet ordre :

  1. La racine --profile indicateur.

  2. La LVL_PROFILE variable d'environnement.

  3. Le profil par défaut enregistré.

  4. Le prod profil.

Commandes courantes :

Commande

Objectif

lvl auth login

Se connecter via un flux d'approbation basé sur un navigateur.

lvl auth status

Vérifier la session active et l'organisation.

lvl auth logout

Révoquer la session active et supprimer les informations d'identification locales.

lvl profile list

Lister les profils de serveur API configurés.

lvl profile create <name> <url>

Ajouter un profil. Utiliser --default pour le sélectionner immédiatement.

lvl profile use <profile>

Définir le profil par défaut.

lvl profile delete <profile>

Supprimer la configuration et les informations d'identification du profil local.

⚠️ AVERTISSEMENT : La suppression d'un profil ne révoque pas sa session côté serveur. Exécuter lvl --profile <profile> auth logout avant de le supprimer.

Formats de sortie

La plupart des commandes affichent par défaut un tableau ou un résumé lisible par un humain.

Utiliser la sortie JSON :

lvl device list -o json

Utiliser le filtre jq intégré :

lvl device list --jq '.list[] | {id, name, online}'

--jq implique le JSON. Il ne peut pas être combiné avec une sortie tableau explicite.

Les commandes d'export CSV écrivent du CSV brut vers la sortie standard :

lvl device export > devices.csv
lvl alert export > alerts.csv
lvl run export > runs.csv

Les commandes de spécification d'automatisation et de politique de surveillance utilisent --format yaml|json, avec YAML comme valeur par défaut. Elles n'utilisent pas l'indicateur standard -o indicateur pour la spécification elle-même.

Pagination

La plupart des commandes de liste de ressources prennent en charge :

Indicateur

Comportement

--limit <count>

Retourner jusqu'au nombre d'enregistrements demandé. La valeur par défaut est 100.

--limit all

Récupérer toutes les pages de résultats.

--page <number>

Retourner une page basée sur 1.

--limit all ne peut pas être combiné avec --page.

Les commandes paginées comprennent les listes d'alertes, d'automatisations, de déclencheurs d'automatisation, d'appareils, de fichiers, de surveillances, de politiques de surveillance, d'exécutions, de scripts, de balises, de mises à jour, de résumés de mises à jour, d'appareils mis à jour, de journaux de mises à jour et d'exclusions de mises à jour.

Les clés API, les groupes, les champs personnalisés, les profils et les variables utilisent des listes non paginées.

Dans la sortie de liste JSON, count est le nombre total d'enregistrements serveur correspondants, et non le nombre retourné sur la page actuelle.

Références de ressources

De nombreuses commandes acceptent un identifiant ou une référence lisible par un humain. Une correspondance exacte d'identifiant est prioritaire. La correspondance par nom et alias est insensible à la casse.

Les formes courantes incluent :

Ressource

Références acceptées

Appareil

Identifiant, nom d'hôte, nom, surnom, ou <group>/<hostname>

Groupe d'appareils

Identifiant, nom, ou chemin imbriqué tel que Ops/Maintenance

Automatisation

Identifiant ou nom

Script

Identifiant ou nom

Fichier du dépôt

Identifiant ou nom de fichier, avec ou sans extension

Politique de surveillance

Identifiant ou nom

Balise

Nom

Champ personnalisé

Nom ou référence générée

Exclusion de mise à jour

Identifiant ou numéro KB, avec ou sans le KB préfixe

Si une référence correspond à plus d'une ressource, le CLI s'arrête et liste les candidats au lieu d'en choisir un.

Commandes d'alerte

Commande

Objectif

alert list

Lister les alertes actives, résolues ou toutes les alertes.

alert get <alert-id>

Obtenir une alerte.

alert resolve

Résoudre les alertes par identifiant ou filtres.

alert unresolve <alert-id>...

Rouvrir les alertes résolues par identifiant.

alert export

Exporter les alertes correspondantes au format CSV.

Commandes de clé API

Commande

Objectif

apikey list

Lister les clés API.

apikey get <api-key>

Obtenir une clé API. Utiliser --reveal pour afficher le jeton complet dans la sortie tableau.

apikey create

Créer une clé API en lecture seule ou en lecture-écriture.

apikey update <api-key>

Mettre à jour une clé API.

apikey delete <api-key>...

Supprimer définitivement les clés API.

⚠️ AVERTISSEMENT : La sortie JSON de la clé API contient le jeton complet. Protégez la sortie du terminal, les fichiers exportés et les journaux CI.

Commandes d'automatisation

Commande

Objectif

automation list

Lister les automatisations.

automation get <automation>

Obtenir une automatisation.

automation create

Créer une automatisation à partir d'indicateurs ou d'un fichier de spécification.

automation spec <automation>

Exporter une spécification d'automatisation.

automation apply -f <spec>

Réconcilier une automatisation existante avec une spécification.

automation update <automation>

Mettre à jour les propriétés d'automatisation.

automation delete <automation>...

Archiver les automatisations.

automation restore <automation>...

Restaurer les automatisations archivées.

automation run <automation>

Exécuter une automatisation sur des appareils ou des groupes.

automation trigger ...

Lister, ajouter, mettre à jour, supprimer ou exécuter manuellement des déclencheurs.

automation action ...

Ajouter, mettre à jour ou supprimer des actions.

automation variable ...

Gérer les variables d'automatisation.

automation group ...

Gérer les groupes d'automatisation.

Les commandes de mutation de déclencheur et d'action acceptent --json ou --json-file. Le contenu doit contenir exactement un type pris en charge, et les champs inconnus sont rejetés.

Exécuter lvl automation action --help ou lvl skill describe automation action pour les types d'actions pris en charge par votre version installée.

⚠️ AVERTISSEMENT :automation apply peut supprimer les déclencheurs et les actions absents de la spécification. L'application n'est pas transactionnelle. Exécuter avec --dry-run et examiner le plan en premier.

Commandes de champs personnalisés

Commande

Objectif

customfield list

Lister les champs personnalisés de l'organisation.

customfield get <field>

Obtenir un champ personnalisé.

customfield create

Créer un champ.

customfield update <field>

Mettre à jour un champ.

customfield delete <field>...

Supprimer des champs.

customfield set <field> <value>

Définir une valeur au niveau de l'organisation.

customfield clear <field>

Effacer une valeur au niveau de l'organisation.

device customfield ...

Lister, définir ou effacer les valeurs au niveau de l'appareil.

device group customfield ...

Lister, définir ou effacer les valeurs des groupes d'appareils.

Les valeurs des champs personnalisés sont héritées de l'organisation vers le groupe d'appareils puis vers l'appareil. Les opérations de définition ou d'effacement en cascade peuvent écraser ou supprimer les valeurs descendantes.

Commandes d'appareils

Commande

Objectif

device list

Lister et filtrer les appareils.

device get <device>

Obtenir les détails de l'appareil.

device restart <device>...

Demander un redémarrage.

device shutdown <device>...

Demander un arrêt.

device maintenance enable|disable <device>...

Modifier le mode maintenance.

device update <device>

Mettre à jour les propriétés modifiables de l'appareil.

device delete <device>...

Supprimer définitivement les appareils.

device favorite|unfavorite <device>...

Modifier le statut de favori.

device flag|unflag <device>...

Modifier le statut de signalement.

device export

Exporter les appareils au format CSV.

device install-key

Imprimer une clé d'installation d'agent pour le provisionnement.

device group ...

Gérer les groupes d'appareils et les affectations.

device customfield ...

Gérer les valeurs des champs personnalisés des appareils.

Le redémarrage et l'arrêt demandent l'action immédiatement et n'attendent pas que l'appareil la complète.

⚠️ AVERTISSEMENT :device install-key imprime une information d'identification de provisionnement vers la sortie standard. Évitez de l'exposer dans l'historique du shell, les terminaux partagés ou les journaux CI.

Commandes de fichiers

Commande

Objectif

file list

Lister les fichiers du dépôt.

file get <file>

Obtenir les métadonnées du fichier.

file upload <path>...

Téléverser des fichiers locaux.

file download <file> [<dest>]

Télécharger un fichier. Utiliser - comme destination pour la sortie standard.

file rename <file> <filename>

Renommer un fichier du dépôt.

file replace <file> <path>

Remplacer le contenu d'un fichier tout en conservant l'identifiant du fichier du dépôt.

file delete <file>...

Supprimer définitivement les fichiers.

file storage

Afficher l'utilisation du stockage.

file group ...

Gérer les groupes de fichiers du dépôt.

file download --overwrite peut remplacer un fichier local existant. Remplacer un fichier du dépôt modifie le contenu utilisé par les automatisations qui font référence à cet identifiant de fichier.

Commandes de surveillance

Commande

Objectif

monitor list

Lister les surveillances dans les politiques.

monitor get <monitor>

Obtenir une surveillance.

monitor add <policy>

Ajouter une surveillance à une politique à partir d'un contenu JSON.

monitor update <monitor>

Mettre à jour une surveillance avec un contenu JSON.

monitor delete <monitor>...

Supprimer des surveillances.

monitor enable|disable <monitor>... --device <device>

Remplacer les surveillances pour un appareil.

monitor policy list

Lister les politiques de surveillance.

monitor policy get <policy>

Obtenir une politique.

monitor policy create

Créer une politique à partir d'indicateurs ou d'une spécification.

monitor policy spec <policy>

Exporter une spécification de politique.

monitor policy apply -f <spec>

Réconcilier une politique avec une spécification.

monitor policy target|untarget <policy>

Gérer les balises cibles.

Les commandes de contenu de surveillance acceptent --json ou --json-file. Exécuter lvl monitor add --help pour les types de surveillance pris en charge.

L'application de la politique de surveillance peut supprimer les surveillances absentes du fichier et n'est pas transactionnelle. Utiliser --dry-run en premier.

Commandes d'exécution

Commande

Objectif

run list

Lister les exécutions d'automatisation et de script.

run get <run-id>

Obtenir une exécution et ses étapes. Utiliser --wait pour attendre la fin.

run cancel

Annuler des exécutions par identifiant ou filtres.

run rerun

Démarrer de nouvelles exécutions à partir d'exécutions sélectionnées.

run retry <run-id>...

Relancer les exécutions échouées depuis l'étape défaillante.

run approve <run-id>...

Approuver les exécutions en attente à une étape d'approbation.

run deny <run-id>...

Refuser et annuler les exécutions en attente à une étape d'approbation.

run export

Exporter les exécutions au format CSV.

L'attente est par défaut de 15 minutes et retourne jusqu'à 1 000 lignes de sortie par étape. Utiliser --wait-timeout et --output-lines pour modifier ces limites.

Un ERROR ou CANCELED le résultat se termine avec un code non nul. Un WARNING le résultat est traité comme réussi.

Commandes de script

Commande

Objectif

script list

Lister les scripts enregistrés.

script get <script>

Obtenir un script enregistré. Utiliser --raw pour n'imprimer que son corps.

script create

Créer un script à partir de --file ou --command.

script update <script>

Mettre à jour un script enregistré.

script delete <script>...

Supprimer des scripts.

script run [<script>]

Exécuter un script enregistré, un fichier ou une commande en ligne.

script variable ...

Gérer les variables de script.

script group ...

Gérer les groupes de scripts.

Une cible d'exécution peut provenir d'indicateurs répétés --device indicateurs, --group, ou les deux. Les cibles en double ne sont exécutées qu'une seule fois.

Un script enregistré utilise son shell stocké, son délai d'expiration et son paramètre d'exécution. Les exécutions de script ad hoc déduisent le shell à partir d'un indicateur explicite, d'une extension de fichier, d'un shebang ou du système d'exploitation cible.

⚠️ AVERTISSEMENT : La création de script et les exécutions de script ad hoc utilisent par défaut le paramètre SYSTEM paramètre d'exécution. Examinez le script et la liste des cibles avant l'exécution.

Commandes de compétence

Commande

Objectif

skill show

Imprimer la SKILL.md.

skill install

Installer la compétence pour l'utilisateur actuel.

skill install --project

Installer la compétence dans le projet actuel.

skill describe [<command>...]

Imprimer les indicateurs et les définitions de sortie JSON.

Réinstaller la compétence après la mise à niveau de lvl afin que les agents de codage reçoivent l'arborescence de commandes actuelle.

Commandes de balises

Commande

Objectif

tag list

Lister les balises.

tag get <tag>

Obtenir une balise.

tag create

Créer une balise.

tag update <tag>

Mettre à jour une balise.

tag delete <tag>...

Supprimer les balises inutilisées.

tag assign <tag> --device <device>...

Affecter une balise aux appareils.

tag unassign <tag> --device <device>...

Retirer une balise des appareils.

Commandes de mise à jour

Commande

Objectif

update list

Lister les mises à jour disponibles, installées ou toutes les mises à jour.

update get <update-id>

Obtenir une mise à jour.

update check <device>...

Demander une analyse des mises à jour.

update install

Installer les mises à jour sélectionnées.

update retry

Relancer les installations échouées sélectionnées.

update install-all

Installer les mises à jour disponibles sur les appareils sélectionnés.

update log list|get

Examiner les enregistrements d'installation de mise à jour et les journaux.

update summary list

Lister les résumés de mises à jour.

update device list

Lister les appareils dans le contexte de mise à jour.

update exclusion list|create|update|delete

Gérer les exclusions KB globales.

L'installation de mise à jour, la relance et l'installation de toutes les mises à jour autorisent les redémarrages requis par défaut. Utiliser --no-reboot lorsque la commande sélectionnée ne doit pas redémarrer un appareil.

⚠️ AVERTISSEMENT : Examinez les sélections de mise à jour et d'appareil avant l'installation. Les opérations basées sur des filtres et sur tous les appareils nécessitent une confirmation explicite.

Commandes de groupe

Les groupes d'appareils, de scripts, d'automatisations et de fichiers partagent ces sous-commandes :

  • list

  • create

  • rename

  • move

  • delete

  • assign

  • unassign

Les listes de groupes récupèrent la hiérarchie complète. La suppression d'un groupe requiert qu'il soit vide et n'ait aucun groupe enfant.

Confirmation et travail asynchrone

Les commandes de suppression permanente prennent en charge --yes. Dans un terminal interactif, le CLI peut inviter l'utilisateur. Dans une exécution non interactive, les commandes qui nécessitent une confirmation échouent sauf si --yes est fourni.

Certaines commandes retournent après que Level a accepté la demande, avant que le travail ne soit terminé sur un appareil. Celles-ci comprennent les actions d'alimentation, les vérifications et installations de mises à jour, les scripts, les automatisations et les exécutions de déclencheurs. Utilisez l'historique des exécutions, run get --wait, les journaux de mise à jour, ou l'application web Level pour confirmer le résultat final.

Avez-vous trouvé la réponse à votre question ?