CLI-Referenz
Die kubetail-CLI ist der wichtigste Einstiegspunkt fuer Kubetail auf Ihrem Desktop. Sie koennen sie verwenden, um das Web-Dashboard zu starten, Logs in Ihr Terminal zu streamen oder Kubetail-Ressourcen in Ihrem Cluster zu verwalten.
Globale Flags
Abschnitt betitelt „Globale Flags“Diese Flags stehen bei allen Befehlen zur Verfuegung:
| Flag | Default | Description |
|---|---|---|
--kubeconfig | Pfad zur kubeconfig-Datei | |
--in-cluster | false | In-Cluster-Kubernetes-Konfiguration verwenden |
-c, --config | ~/.kubetail/config.yaml | Pfad zur Konfigurationsdatei |
Befehle
Abschnitt betitelt „Befehle“kubetail serve
Abschnitt betitelt „kubetail serve“Starten Sie den Dashboard-Server und oeffnen Sie die Web-UI in Ihrem Standardbrowser.
kubetail serve [flags]Flags
| Flag | Default | Description |
|---|---|---|
-p, --port | 7500 | Portnummer, auf der gelauscht wird |
--host | localhost | Host-Adresse, an die gebunden wird |
-l, --log-level | info | Log-Level (debug, info, warn, error, disabled) |
--skip-open | false | Browser nicht automatisch oeffnen |
Beispiele
# Dashboard starten (oeffnet unter http://localhost:7500)kubetail serve
# Einen benutzerdefinierten Port verwendenkubetail serve --port 8080
# Starten, ohne den Browser zu oeffnenkubetail serve --skip-openkubetail logs
Abschnitt betitelt „kubetail logs“Logs fuer einen Container oder eine Menge von Workload-Containern abrufen.
kubetail logs [source1] [source2] ... [flags]Quellen
Eine Quelle gibt an, von welchen Pods/Containern Logs gestreamt werden sollen. Quellen verwenden die folgende Syntax:
[namespace:]<resource>[/name[/container]]| Example | Description |
|---|---|
web-abc123 | Pod namens web-abc123 im Default-Namespace |
deployments/web | Deployment web im Default-Namespace |
deployments/* | Alle Deployments im Default-Namespace |
deployments/web/container1 | Bestimmter Container in einem Deployment |
deployments/web/* | Alle Container in einem Deployment |
frontend:web-abc123 | Pod im Namespace frontend |
frontend:deployments/web | Deployment im Namespace frontend |
Es koennen mehrere Quellen angegeben werden:
kubetail logs <source1> <source2>Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Zu verwendender kubeconfig-Kontext | |
-h, --head[=N] | 10 | Die ersten N Eintraege zurueckgeben |
-t, --tail[=N] | 10 | Die letzten N Eintraege zurueckgeben |
--all | false | Alle Eintraege zurueckgeben |
-f, --follow | false | Neue Eintraege streamen |
--since | Eintraege ab dem angegebenen Zeitpunkt einschliessen (inklusiv) | |
--until | Eintraege bis zum angegebenen Zeitpunkt einschliessen (inklusiv) | |
--after | Eintraege streng nach dem angegebenen Zeitpunkt einschliessen | |
--before | Eintraege streng vor dem angegebenen Zeitpunkt einschliessen | |
-g, --grep | Eintraege mit einem regulaeren Ausdruck filtern (erfordert --force) | |
--region | Quell-Pods nach Region filtern (kommagetrennt) | |
--zone | Quell-Pods nach Zone filtern (kommagetrennt) | |
--os | Quell-Pods nach Betriebssystem filtern (kommagetrennt) | |
--arch | Quell-Pods nach CPU-Architektur filtern (kommagetrennt) | |
--node | Quell-Pods nach Knotennamen filtern (kommagetrennt) | |
--raw | false | Nur rohe Log-Nachrichten ohne Metadaten ausgeben |
--columns | Ausgabespalten setzen (ueberschreibt Standardwerte) | |
--add-columns | Ausgabespalten zu den Standardwerten hinzufuegen | |
--remove-columns | Ausgabespalten aus den Standardwerten entfernen | |
--with-cursors | false | Paging-Cursor anzeigen |
--hide-header | false | Tabellenkopf ausblenden |
--all-containers | false | Logs aller Container in einem Pod anzeigen |
--force | false | Befehl erzwingen (erforderlich bei --grep) |
Die Flags --columns, --add-columns und --remove-columns akzeptieren eine kommagetrennte Liste von Spaltennamen: timestamp, dot, node, region, zone, os, arch, namespace, pod, container.
Die Flags --head, --tail und --all schliessen sich gegenseitig aus. Die Flags --since und --after schliessen sich ebenfalls gegenseitig aus, ebenso --until und --before.
Die Flags --since, --until, --after und --before akzeptieren:
- Einen ISO-8601-Zeitstempel (z. B.
2006-01-02T15:04:05Z07:00) - Eine ISO-8601-Dauer relativ zu jetzt (z. B.
PT30Mfuer vor 30 Minuten) - nur fuer--sinceund--until
Standardverhalten: Tail-Modus (letzte 10 Eintraege), ausser wenn --since angegeben ist; dann wird der Head-Modus verwendet.
Beispiele
# Die letzten 10 Eintraege eines Pods anzeigenkubetail logs nginx
# Ein Deployment tailenkubetail logs deployments/web
# Neue Eintraege verfolgenkubetail logs deployments/web --follow
# Alle Eintraege zurueckgeben und weiter folgenkubetail logs deployments/web --all --follow
# Erste 100 Eintraege zurueckgebenkubetail logs nginx --head=100
# Eintraege der letzten 30 Minuten zurueckgebenkubetail logs nginx --since PT30M --all
# Eintraege zwischen zwei Zeitstempeln zurueckgebenkubetail logs nginx --since 2006-01-02T15:04:05Z --until 2007-01-02T15:04:05Z --all
# Nach regulaerem Ausdruck filtern (erfordert --force)kubetail logs nginx --grep "GET /about" --force
# Pods nach Region filternkubetail logs deployments/web --region=us-east-1
# Nur rohe Log-Nachrichten ausgebenkubetail logs nginx --rawkubetail cluster
Abschnitt betitelt „kubetail cluster“Kubetail-Cluster-Ressourcen mit Helm im Hintergrund verwalten (Helm muss nicht separat installiert werden).
kubetail cluster <subcommand> [flags]kubetail cluster install
Abschnitt betitelt „kubetail cluster install“Ein neues Kubetail-Release im Cluster erstellen.
kubetail cluster install [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Name des zu verwendenden kubeconfig-Kontexts |
Beispiele
kubetail cluster installkubetail cluster upgrade
Abschnitt betitelt „kubetail cluster upgrade“Ein vorhandenes Kubetail-Release auf die lokal verfuegbare neueste Chart-Version aktualisieren.
kubetail cluster upgrade [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Name des zu verwendenden kubeconfig-Kontexts |
Beispiele
kubetail cluster upgradekubetail cluster uninstall
Abschnitt betitelt „kubetail cluster uninstall“Ein vorhandenes Kubetail-Release aus dem Cluster entfernen.
kubetail cluster uninstall [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Name des zu verwendenden kubeconfig-Kontexts |
Beispiele
kubetail cluster uninstallkubetail cluster list
Abschnitt betitelt „kubetail cluster list“Derzeit installierte Kubetail-Releases auflisten.
kubetail cluster list [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Name des zu verwendenden kubeconfig-Kontexts |
Beispiele
kubetail cluster listkubetail cluster repo
Abschnitt betitelt „kubetail cluster repo“Das Helm-Chart-Repository von Kubetail verwalten (https://kubetail-org.github.io/helm-charts/).
kubetail cluster repo <subcommand>| Subcommand | Description |
|---|---|
add | Das Kubetail-Chart-Repository zu Helm hinzufuegen |
update | Das Kubetail-Chart-Repository in Helm aktualisieren |
remove | Das Kubetail-Chart-Repository aus Helm entfernen |
Beispiele
kubetail cluster repo addkubetail cluster repo updatekubetail cluster repo removekubetail config
Abschnitt betitelt „kubetail config“Die Konfiguration der Kubetail-CLI verwalten.
kubetail config <subcommand>kubetail config init
Abschnitt betitelt „kubetail config init“Eine Standard-Konfigurationsdatei erstellen.
kubetail config init [flags]Flags
| Flag | Default | Description |
|---|---|---|
--path | ~/.kubetail/config.yaml | Zielpfad fuer die Konfigurationsdatei |
--format | yaml | Format der Konfigurationsdatei (yaml, json, toml) |
--force | false | Eine vorhandene Konfigurationsdatei ueberschreiben |
Beispiele
# Standardkonfiguration unter ~/.kubetail/config.yaml erstellenkubetail config init
# Konfiguration im JSON-Format erstellenkubetail config init --format json
# Vorhandene Konfigurationsdatei ueberschreibenkubetail config init --force
# Konfiguration in einen benutzerdefinierten Pfad schreibenkubetail config init --path /etc/kubetail/config.yamlKonfiguration
Abschnitt betitelt „Konfiguration“Die CLI kann ueber eine YAML- (oder JSON-/TOML-) Konfigurationsdatei konfiguriert werden. Standardmaessig wird sie aus ~/.kubetail/config.yaml gelesen. Verwenden Sie kubetail config init, um eine Standard-Konfigurationsdatei zu erzeugen, oder uebergeben Sie einen benutzerdefinierten Pfad mit dem globalen Flag -c / --config.
## Kubetail CLI Configuration File## This file defines the behavior for the kubetail CLI tool,# including logs command defaults and dashboard server settings.#
## version #### Schema version for the configuration file#version: 1
## general ###general:
## kubeconfig ## # # Path to the kubeconfig file to use for CLI requests. # If empty, the default path (~/.kube/config) or KUBECONFIG env var is used. # # Default value: "" # kubeconfig: ""
## commands ###commands:
## logs ## # # Settings specific to the 'logs' subcommand # logs:
## kube-context ## # # The specific Kubernetes context to use. # If empty, the current active context is used. # # Default value: "" # kube-context: ""
## head ## # # The number of lines to show from the beginning of the log buffer # # Default value: 10 # head: 10
## tail ## # # The number of lines to show from the end of the log buffer # # Default value: 10 # tail: 10
## columns ## # # Full set of output columns for 'logs' records. # Allowed values: timestamp,dot,node,region,zone,os,arch,namespace,pod, container # # Default value: ["timestamp", "dot"] # columns: - timestamp - dot
## serve ## # # Settings for the dashboard server # serve:
## host ## # # The network interface the server should bind to. # # Default value: localhost # host: localhost
## port ## # # The TCP port the server will listen on. # # Default value: 7500 # port: 7500
## skip-open ## # # If true, the CLI will not automatically open the browser # when the server starts. # # Default value: false # skip-open: false
## dashboard #### Settings for the web dashboard UI#dashboard:
## columns ## # # The default columns to show when displaying log records. # # Default value: ["timestamp", "dot"] # columns: - timestamp - dot# Kubetail CLI Configuration File## Defines behavior for the kubetail CLI tool, including# logs command defaults and dashboard server settings.
# Schema version for the configuration fileversion = 1
[general]# Path to kubeconfig. If empty, uses ~/.kube/config or KUBECONFIG env var.kubeconfig = ""
[commands.logs]# Specific Kubernetes context to use. If empty, uses active context.kube-context = ""
# Number of lines to show from the beginning of the log bufferhead = 10
# Number of lines to show from the end of the log buffertail = 10
# Full set of output columns for 'logs' records.# Allowed values: timestamp,dot,node,region,zone,os,arch,namespace,pod,containercolumns = ["timestamp", "dot"]
[commands.serve]# Network interface the server binds tohost = "localhost"
# TCP port the server listens onport = 7500
# If true, don't automatically open browser when server startsskip-open = false
[dashboard]# The default columns to show when displaying log records.columns = ["timestamp", "dot"]{ "version": 1, "general": { "kubeconfig": "" }, "commands": { "logs": { "kube-context": "", "head": 10, "tail": 10, "columns": ["timestamp", "dot"] }, "serve": { "host": "localhost", "port": 7500, "skip-open": false } }, "dashboard": { "columns": ["timestamp", "dot"] }}