Referencia de la CLI
La CLI kubetail es el punto de entrada principal de Kubetail en su escritorio. Puede usarla para iniciar el dashboard web, transmitir logs a su terminal o gestionar recursos de Kubetail en su cluster.
Flags globales
Sección titulada «Flags globales»Estas flags estan disponibles en todos los comandos:
| Flag | Default | Description |
|---|---|---|
--kubeconfig | Ruta al archivo kubeconfig | |
--in-cluster | false | Usar la configuracion de Kubernetes dentro del cluster |
-c, --config | ~/.kubetail/config.yaml | Ruta al archivo de configuracion |
Comandos
Sección titulada «Comandos»kubetail serve
Sección titulada «kubetail serve»Inicie el servidor del dashboard y abra la interfaz web en su navegador predeterminado.
kubetail serve [flags]Flags
| Flag | Default | Description |
|---|---|---|
-p, --port | 7500 | Numero de puerto en el que escuchar |
--host | localhost | Direccion del host a la que enlazarse |
-l, --log-level | info | Nivel de log (debug, info, warn, error, disabled) |
--skip-open | false | No abrir el navegador |
Ejemplos
# Iniciar el dashboard (se abre en http://localhost:7500)kubetail serve
# Usar un puerto personalizadokubetail serve --port 8080
# Iniciar sin abrir el navegadorkubetail serve --skip-openkubetail logs
Sección titulada «kubetail logs»Obtener logs de un contenedor o de un conjunto de contenedores de workloads.
kubetail logs [source1] [source2] ... [flags]Fuentes
Una fuente identifica desde que pods o contenedores se deben transmitir logs. Las fuentes usan la siguiente sintaxis:
[namespace:]<resource>[/name[/container]]| Example | Description |
|---|---|
web-abc123 | Pod llamado web-abc123 en el namespace predeterminado |
deployments/web | Deployment web en el namespace predeterminado |
deployments/* | Todos los deployments en el namespace predeterminado |
deployments/web/container1 | Un contenedor especifico en un deployment |
deployments/web/* | Todos los contenedores de un deployment |
frontend:web-abc123 | Pod en el namespace frontend |
frontend:deployments/web | Deployment en el namespace frontend |
Se pueden especificar varias fuentes:
kubetail logs <source1> <source2>Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Contexto de kubeconfig que se utilizara | |
-h, --head[=N] | 10 | Devolver los primeros N registros |
-t, --tail[=N] | 10 | Devolver los ultimos N registros |
--all | false | Devolver todos los registros |
-f, --follow | false | Transmitir registros nuevos |
--since | Incluir registros desde el punto especificado (incluido) | |
--until | Incluir registros hasta el punto especificado (incluido) | |
--after | Incluir registros estrictamente posteriores al punto especificado | |
--before | Incluir registros estrictamente anteriores al punto especificado | |
-g, --grep | Filtrar registros mediante una expresion regular (requiere --force) | |
--region | Filtrar pods fuente por region (separado por comas) | |
--zone | Filtrar pods fuente por zona (separado por comas) | |
--os | Filtrar pods fuente por sistema operativo (separado por comas) | |
--arch | Filtrar pods fuente por arquitectura de CPU (separado por comas) | |
--node | Filtrar pods fuente por nombre de nodo (separado por comas) | |
--raw | false | Mostrar solo mensajes de log sin metadatos |
--columns | Establecer columnas de salida (sobrescribe los valores predeterminados) | |
--add-columns | Agregar columnas de salida a las predeterminadas | |
--remove-columns | Quitar columnas de salida de las predeterminadas | |
--with-cursors | false | Mostrar cursores de paginacion |
--hide-header | false | Ocultar cabecera de la tabla |
--all-containers | false | Mostrar logs de todos los contenedores de un pod |
--force | false | Forzar el comando (requerido al usar --grep) |
Las flags --columns, --add-columns y --remove-columns aceptan una lista de nombres de columnas separada por comas: timestamp, dot, node, region, zone, os, arch, namespace, pod, container.
Las flags --head, --tail y --all son mutuamente excluyentes. Las flags --since y --after tambien lo son, al igual que --until y --before.
Las flags --since, --until, --after y --before aceptan:
- Una marca de tiempo ISO 8601 (por ejemplo,
2006-01-02T15:04:05Z07:00) - Una duracion ISO 8601 relativa al momento actual (por ejemplo,
PT30Mpara hace 30 minutos) - solo para--sincey--until
Comportamiento predeterminado: modo tail (ultimos 10 registros), a menos que se especifique --since, en cuyo caso se usa el modo head.
Ejemplos
# Ver los ultimos 10 registros de un podkubetail logs nginx
# Hacer tail de un deploymentkubetail logs deployments/web
# Seguir registros nuevoskubetail logs deployments/web --follow
# Devolver todos los registros y seguirkubetail logs deployments/web --all --follow
# Devolver los primeros 100 registroskubetail logs nginx --head=100
# Devolver registros de los ultimos 30 minutoskubetail logs nginx --since PT30M --all
# Devolver registros entre dos marcas de tiempokubetail logs nginx --since 2006-01-02T15:04:05Z --until 2007-01-02T15:04:05Z --all
# Filtrar por expresion regular (requiere --force)kubetail logs nginx --grep "GET /about" --force
# Filtrar pods por regionkubetail logs deployments/web --region=us-east-1
# Mostrar solo mensajes de log sin formatokubetail logs nginx --rawkubetail cluster
Sección titulada «kubetail cluster»Gestione recursos de Kubetail en el cluster usando Helm internamente (no es necesario instalar Helm por separado).
kubetail cluster <subcommand> [flags]kubetail cluster install
Sección titulada «kubetail cluster install»Crear un nuevo release de Kubetail en el cluster.
kubetail cluster install [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Nombre del contexto de kubeconfig que se utilizara |
Ejemplos
kubetail cluster installkubetail cluster upgrade
Sección titulada «kubetail cluster upgrade»Actualizar un release existente de Kubetail a la version mas reciente del chart disponible localmente.
kubetail cluster upgrade [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Nombre del contexto de kubeconfig que se utilizara |
Ejemplos
kubetail cluster upgradekubetail cluster uninstall
Sección titulada «kubetail cluster uninstall»Eliminar un release existente de Kubetail del cluster.
kubetail cluster uninstall [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Nombre del contexto de kubeconfig que se utilizara |
Ejemplos
kubetail cluster uninstallkubetail cluster list
Sección titulada «kubetail cluster list»Listar los releases de Kubetail instalados actualmente.
kubetail cluster list [flags]Flags
| Flag | Default | Description |
|---|---|---|
--kube-context | Nombre del contexto de kubeconfig que se utilizara |
Ejemplos
kubetail cluster listkubetail cluster repo
Sección titulada «kubetail cluster repo»Gestionar el repositorio del chart de Helm de Kubetail (https://kubetail-org.github.io/helm-charts/).
kubetail cluster repo <subcommand>| Subcommand | Description |
|---|---|
add | Agregar el repositorio del chart de Kubetail a Helm |
update | Actualizar el repositorio del chart de Kubetail en Helm |
remove | Eliminar el repositorio del chart de Kubetail de Helm |
Ejemplos
kubetail cluster repo addkubetail cluster repo updatekubetail cluster repo removekubetail config
Sección titulada «kubetail config»Gestionar la configuracion de la CLI de Kubetail.
kubetail config <subcommand>kubetail config init
Sección titulada «kubetail config init»Crear un archivo de configuracion predeterminado.
kubetail config init [flags]Flags
| Flag | Default | Description |
|---|---|---|
--path | ~/.kubetail/config.yaml | Ruta de destino del archivo de configuracion |
--format | yaml | Formato del archivo de configuracion (yaml, json, toml) |
--force | false | Sobrescribir un archivo de configuracion existente |
Ejemplos
# Crear la configuracion predeterminada en ~/.kubetail/config.yamlkubetail config init
# Crear la configuracion en formato JSONkubetail config init --format json
# Sobrescribir un archivo de configuracion existentekubetail config init --force
# Escribir la configuracion en una ruta personalizadakubetail config init --path /etc/kubetail/config.yamlConfiguracion
Sección titulada «Configuracion»La CLI puede configurarse usando un archivo de configuracion YAML (o JSON/TOML). Por defecto se lee desde ~/.kubetail/config.yaml. Use kubetail config init para generar un archivo de configuracion predeterminado o pase una ruta personalizada con la flag global -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"] }}