Diese Rezepte zeigen gängige Möglichkeiten zur Nutzung der Level CLI aus einem Terminal. Ersetzen Sie Beispielnamen wie web-01, Laptops, und Disk cleanup mit Ressourcen aus Ihrem Level-Konto.
ℹ️ HINWEIS: Führen Sie lvl auth status vor einem Rezept, um das aktive Profil und die Level-Organisation zu bestätigen. Bevorzugen Sie Ressourcen-IDs, wenn ein Name mit mehr als einem Datensatz übereinstimmt.
Anmelden und die Sitzung überprüfen
Browser-basierte Anmeldung starten:
lvl auth login
Die aktive Sitzung bestätigen:
lvl auth status
Der Anmeldebefehl gibt einen Einmalcode und eine Verifizierungs-URL aus. Nachdem Sie den Zugriff in Ihrem Browser genehmigt haben, speichert die CLI die Sitzung für das aktive Profil.
Geräte auflisten und filtern
Gerätenamen durchsuchen und alle übereinstimmenden Seiten zurückgeben:
lvl device list --search web --limit all
Dieselben Ergebnisse als JSON zurückgeben:
lvl device list --search web --limit all -o json
Den integrierten jq-Filter verwenden, um bestimmte Felder auszuwählen:
lvl device list --search web --limit all --jq '.list[] | {id, name, online}'--jq impliziert JSON-Ausgabe. Zeichenkettenergebnisse werden als Klartext ausgegeben. Objekte und andere Werte werden als kompaktes JSON ausgegeben, ein Ergebnis pro Zeile.
ℹ️ HINWEIS: Paginierte Listenbefehle geben standardmäßig bis zu 100 Datensätze zurück. Verwenden Sie --limit all nur dann, wenn Sie den vollständigen Ergebnissatz benötigen.
Geräte als CSV exportieren
Geräte in einer Gruppe exportieren:
lvl device export --group Laptops > devices.csv
Der Export schreibt unformatiertes CSV in die Standardausgabe. Leiten Sie es in eine Datei um, anstatt -o json.
Dasselbe Muster lässt sich für Alarme und Automatisierungsläufe verwenden:
lvl alert export --status resolved > resolved-alerts.csv
lvl run export --status error > failed-runs.csv
Eine schreibgeschützte Diagnose auf einem Unix-ähnlichen Gerät ausführen
Das folgende Beispiel überprüft die Dateisystemnutzung auf einem Linux- oder macOS-Gerät:
lvl script run \ --device web-01 \ --command 'df -h' \ --shell bash \ --run-as current_user \ --wait \ -o json
Dieser Befehl erstellt einen Ad-hoc-Skriptlauf. --wait fragt den Abschlussstatus ab und fügt die Schrittausgabe in das Ergebnis ein.
Wenn Sie --wait, gibt die CLI die ermittelten Lauf-IDs zurück. Einen Lauf später überprüfen mit:
lvl run get RUN_ID --wait -o json
⚠️ WARNUNG: Bestätigen Sie das Zielbetriebssystem, bevor Sie einen Ad-hoc-Befehl ausführen. Skripterstellung und Ad-hoc-Läufe verwenden standardmäßig die SYSTEM run-as-Einstellung, sofern Sie keinen anderen Wert angeben.
Ein gespeichertes Diagnoseskript erstellen und wiederverwenden
Wenn Sie bereits ein geprüftes Bash-Skript in os-info.sh, speichern Sie es in Level:
lvl script create \ --name 'OS info' \ --file ./os-info.sh \ --shell bash \ --run-as current_user \ -o json
Das gespeicherte Skript anhand des Namens ausführen:
lvl script run 'OS info' --device web-01 --wait -o json
Gespeicherte Variablenwerte für einen einzelnen Lauf überschreiben:
lvl script run 'Repair Chrome' --device web-01 --variable channel=stable --variable version=129 --wait -o json
--variable ist nur verfügbar, wenn Sie ein gespeichertes Skript ausführen. Wiederholen Sie --variable <name>=<value> für jede Überschreibung. Sie können eine Variable anhand von Name, ID oder {{reference}}. Variablen, die Sie nicht angeben, verwenden ihre gespeicherten Standardwerte. Jeder Wert wird exakt beibehalten, einschließlich eines leeren Werts, Kommas und zusätzlicher = Zeichen.
Ein gespeichertes Skript behält seine konfigurierte Shell, das Timeout und die run-as-Einstellung. Wenn Sie ein gespeichertes Skript anhand von Name oder ID ausführen, fügen Sie keine Shell- oder run-as-Überschreibungen hinzu.
Verwenden Sie eine Skript-ID, wenn mehr als ein Skript denselben Namen hat.
Eine Automatisierungsspezifikation in der Vorschau anzeigen
Eine vorhandene Automatisierung als YAML exportieren:
lvl automation spec 'Disk cleanup' > disk-cleanup.yaml
Vorschau anzeigen, wie diese Spezifikation die aktive Automatisierung verändern würde:
lvl automation apply -f disk-cleanup.yaml --dry-run -o json
Ein Probelauf gibt die geplanten Änderungen aus, ohne sie anzuwenden.
Nach dem Prüfen der Datei und des Probelauf-Ergebnisses anwenden mit:
lvl automation apply -f disk-cleanup.yaml
⚠️ WARNUNG: Das Anwenden einer Spezifikation gleicht die aktive Automatisierung mit der Datei ab. Bestehende Auslöser oder Aktionen, die nicht in der Datei enthalten sind, können gelöscht werden. Änderungen werden sequenziell angewendet, sodass ein Fehler frühere Änderungen bestehen lassen kann. Halten Sie einen aktuellen Export bereit und führen Sie --dry-run vor jedem Anwenden.
Monitor-Richtlinien untersuchen
Monitor-Richtlinien auflisten:
lvl monitor policy list --limit all
Eine Richtlinie anhand von ID oder Name abrufen:
lvl monitor policy get 'Server health' -o json
Ihre Spezifikation exportieren:
lvl monitor policy spec 'Server health' > server-health.yaml
Eine Spezifikation vor dem Anwenden in der Vorschau anzeigen:
lvl monitor policy apply -f server-health.yaml --dry-run -o json
Wie beim Anwenden einer Automatisierung gleicht das Anwenden einer Monitor-Richtlinie die aktive Ressource ab und ist nicht transaktional.
Gruppenqualifizierte Referenzen verwenden
Gerätereferenzen können eine ID, einen Hostnamen, einen Namen, einen Spitznamen oder einen gruppenqualifizierten Hostnamen verwenden:
lvl device get 'Servers/web-01'
Gruppenqualifizierte Referenzen helfen, wenn verschiedene Gerätegruppen denselben Hostnamen enthalten. Ist eine Referenz weiterhin mehrdeutig, hält die CLI an und listet die Treffer auf, anstatt einen auszuwählen.
Genaue Flags und Ausgabeformate untersuchen
Normale Befehlshilfe anzeigen:
lvl script run --help
Die generierte Referenz einschließlich der JSON-Ausgabestruktur anzeigen:
lvl skill describe script run
Alle Befehle unter einer Gruppe anzeigen:
lvl skill describe update
Die installierte CLI ist die maßgebliche Quelle für ihre aktuellen Flags und Ausgabedefinitionen.
Sicherheits-Checkliste
Vor dem Ausführen eines Befehls, der Level oder ein verwaltetes Gerät verändert:
Die aktive Organisation bestätigen mit
lvl auth status.Jedes Ziel anhand von ID, Name oder gruppenqualifizierter Referenz bestätigen.
Skripte sowie JSON- oder YAML-Spezifikationen vollständig prüfen.
Prüfen, ob der Befehl standardmäßig
SYSTEM, Aktualisierungen installiert, ein Gerät neu startet oder eine Datei ersetzt.Verwenden Sie
--dry-runverwendet, sofern verfügbar.Verwenden Sie
--yeserst nach Prüfung der vollständigen Auswahl der betroffenen Ressourcen.Den Ausführungsverlauf oder Aktualisierungsprotokolle auf asynchrone Ergebnisse prüfen.
Befehle zum dauerhaften Löschen erfordern eine Bestätigung in einem interaktiven Terminal und erfordern --yes bei nicht-interaktiver Ausführung. Einige Befehle, darunter Geräteneustart und -abschalten, lösen die Aktion sofort aus, ohne zur Bestätigung aufzufordern.
