Ir al contenido principal

Referencia de CLI de Level

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

Use este artículo como mapa del árbol de comandos de la CLI de Level. Para conocer los indicadores exactos y la forma de salida JSON en su versión instalada, use la ayuda normal o la referencia de habilidades generada:

lvl --help
lvl skill describe

Por ejemplo:

lvl device list --help
lvl skill describe device list

Sintaxis de comandos

La forma general es:

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

Mostrar la lista de comandos de nivel superior:

lvl --help

Mostrar todas las entradas de referencia generadas:

lvl skill describe

Perfiles y autenticación

La CLI de Level incluye un prod perfil para https://api.level.io.

La selección de perfiles sigue este orden:

  1. La raíz --profile indicador.

  2. El LVL_PROFILE variable de entorno.

  3. El perfil predeterminado guardado.

  4. El incorporado prod perfil.

Comandos comunes:

Comando

Propósito

lvl auth login

Iniciar sesión mediante un flujo de aprobación basado en navegador.

lvl auth status

Verificar la sesión activa y la organización.

lvl auth logout

Revocar la sesión activa y eliminar las credenciales locales.

lvl profile list

Listar los perfiles del servidor de API configurados.

lvl profile create <name> <url>

Agregar un perfil. Use --default para seleccionarlo inmediatamente.

lvl profile use <profile>

Establecer el perfil predeterminado.

lvl profile delete <profile>

Eliminar la configuración de perfil local y las credenciales.

⚠️ ADVERTENCIA: Eliminar un perfil no revoca su sesión del lado del servidor. Ejecute lvl --profile <profile> auth logout antes de eliminarlo.

Actualizaciones de la CLI

Las compilaciones de lanzamiento se mantienen actualizadas de forma predeterminada. Cuando ejecuta un lvl comando, la CLI aplica cualquier actualización firmada previamente descubierta y vuelve a ejecutar el comando con el nuevo binario. Si no hay ninguna actualización pendiente, busca una en segundo plano y puede aplicarla en la siguiente invocación. Los fallos de actualización automática no detienen el comando que solicitó lvl para ejecutar.

Comando

Propósito

lvl self-update

Buscar e instalar la compilación publicada más reciente de inmediato. Esto funciona incluso cuando las actualizaciones automáticas están deshabilitadas.

lvl self-update --check

Informar si hay una actualización disponible sin instalarla.

lvl self-update url

Mostrar la URL de lanzamiento utilizada actualmente para las actualizaciones.

lvl self-update url <url>

Guardar una URL de lanzamiento personalizada en ~/.lvl/config.yaml.

lvl self-update url --reset

Eliminar la URL personalizada y volver a la fuente de producción integrada.

Establezca auto_update: false en ~/.lvl/config.yaml para deshabilitar las comprobaciones automáticas y las actualizaciones al inicio. Aún puede ejecutar lvl self-update manualmente.

Formatos de salida

La mayoría de los comandos muestran una tabla o resumen legible por humanos de forma predeterminada.

Usar salida JSON:

lvl device list -o json

Usar el filtro jq incorporado:

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

--jq implica JSON. No se puede combinar con salida de tabla explícita.

Los comandos de exportación CSV escriben CSV sin procesar en la salida estándar:

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

Los comandos de especificación de automatización y política de monitores usan --format yaml|json, con YAML como valor predeterminado. No usan el -o indicador para la especificación en sí.

Paginación

La mayoría de los comandos de lista de recursos admiten:

Indicador

Comportamiento

--limit <count>

Devolver hasta el número de registros solicitado. El valor predeterminado es 100.

--limit all

Obtener todas las páginas de resultados.

--page <number>

Devolver una página con base 1.

--limit all no se puede combinar con --page.

Los comandos paginados incluyen listas de alerta, automatización, desencadenador de automatización, dispositivo, archivo, monitor, política de monitores, ejecución, script, etiqueta, actualización, resumen de actualización, dispositivo de actualización, registro de actualización y exclusión de actualización.

Las claves de API, grupos, campos personalizados, perfiles y variables usan listas sin paginar.

En la salida de lista JSON, count es el número total de registros del servidor que coinciden, no el número devuelto en la página actual.

Referencias de recursos

Muchos comandos aceptan un ID o una referencia legible por humanos. Una coincidencia exacta de ID tiene prioridad. La coincidencia por nombre y alias no distingue entre mayúsculas y minúsculas.

Las formas comunes incluyen:

Recurso

Referencias aceptadas

Dispositivo

ID, nombre de host, nombre, apodo o <group>/<hostname>

Grupo de dispositivos

ID, nombre o ruta anidada como Ops/Maintenance

Automatización

ID o nombre

Script

ID o nombre

Archivo de repositorio

ID o nombre de archivo, con o sin su extensión

Política de monitores

ID o nombre

Etiqueta

Nombre

Campo personalizado

Nombre o referencia generada

Exclusión de actualización

ID o número KB, con o sin el KB prefijo

Si una referencia coincide con más de un recurso, la CLI se detiene y lista los candidatos en lugar de elegir uno.

Comandos de alertas

Comando

Propósito

alert list

Listar alertas activas, resueltas o todas.

alert get <alert-id>

Obtener una alerta.

alert resolve

Resolver alertas por ID o filtros.

alert unresolve <alert-id>...

Reabrir alertas resueltas por ID.

alert export

Exportar alertas coincidentes como CSV.

Comandos de claves de API

Comando

Propósito

apikey list

Listar claves de API.

apikey get <api-key>

Obtener una clave de API. Use --reveal para mostrar el token completo en la salida de tabla.

apikey create

Crear una clave de API de solo lectura o de lectura y escritura.

apikey update <api-key>

Actualizar una clave de API.

apikey delete <api-key>...

Eliminar claves de API permanentemente.

⚠️ ADVERTENCIA: La salida JSON de la clave de API contiene el token completo. Proteja la salida del terminal, los archivos exportados y los registros de CI.

Comandos de automatización

Comando

Propósito

automation list

Listar automatizaciones.

automation get <automation>

Obtener una automatización.

automation create

Crear una automatización a partir de indicadores o un archivo de especificación.

automation spec <automation>

Exportar una especificación de automatización.

automation apply -f <spec>

Reconciliar una automatización existente con una especificación.

automation update <automation>

Actualizar las propiedades de la automatización.

automation delete <automation>...

Archivar automatizaciones.

automation restore <automation>...

Restaurar automatizaciones archivadas.

automation run <automation>

Ejecutar una automatización en dispositivos o grupos.

automation trigger ...

Listar, agregar, actualizar, eliminar o ejecutar manualmente desencadenadores.

automation action ...

Agregar, actualizar o eliminar acciones.

automation variable ...

Administrar variables de automatización.

automation group ...

Administrar grupos de automatización.

Los comandos de mutación de desencadenadores y acciones aceptan --json o --json-file. El payload debe contener exactamente un tipo compatible y los campos desconocidos son rechazados.

Ejecute lvl automation action --help o lvl skill describe automation action para los tipos de acción compatibles con su versión instalada.

⚠️ ADVERTENCIA:automation apply puede eliminar desencadenadores y acciones que están ausentes de la especificación. La aplicación no es transaccional. Ejecute con --dry-run y revise el plan primero.

Comandos de aplicaciones

Use estos comandos para revisar el inventario de aplicaciones de toda la organización y profundizar en versiones o instalaciones individuales.

Comando

Propósito

app list

Listar una fila agregada por nombre de aplicación, editor y plataforma. Admite paginación.

app summary

Mostrar recuentos de aplicaciones e instalaciones, incluidos los recuentos de aplicaciones por plataforma, para el ámbito filtrado.

app versions <app>

Listar las versiones de una aplicación con recuentos de instalaciones y dispositivos.

app installs [<app>]

Listar instalaciones individuales de una aplicación, u omitir <app> y pasar exactamente un --device para listar el inventario completo de aplicaciones de ese dispositivo. Admite paginación.

app uninstall [<app>...]

Enviar comandos de desinstalación para las instalaciones de aplicaciones seleccionadas. Las referencias de aplicaciones posicionales son equivalentes a los indicadores repetibles --app indicadores.

<app> acepta un nombre de aplicación, publisher/name, o ID de resumen. Use --platform o un ID cuando un nombre es ambiguo.

Filtros de inventario y opciones de salida:

  • app list y app summary admite --search <term>, --platform <platform>, --device <device>, --group <group>, --ungrouped, --favorites, y --new.

  • app list también admite --sort relevancy|name|publisher|install_count, --direction asc|desc, --limit <count|all>, y --page <number>.

  • app versions <app> admite los mismos filtros de dispositivo, grupo, plataforma, favoritos y nuevos, pero no usa --search, paginación, o indicadores de ordenación.

  • app installs <app> admite indicadores repetibles --version <version-or-id>, incluyendo unknown, más los mismos filtros de dispositivo, grupo, plataforma, favoritos y nuevos. --limit y --page se aplican a los resultados de versión combinados.

  • app installs --device <device> requiere exactamente un dispositivo cuando <app> se omite. Admite --search <term>, --sort relevancy|name|device|publisher|version|size|installed_on|created_at|updated_at, --direction asc|desc, --details, --limit <count|all>, y --page <number>.

  • Los cinco comandos admiten los -o table|json y --jq <expression> opciones de salida.

Opciones de selección de desinstalación:

  • Seleccione aplicaciones con <app> referencias o repetible --app <app>. Seleccione versiones con repetible --app-version <app/version> o, con exactamente un --app, repetible --version <version-or-id>.

  • Use repetible --app-install <install-id> para apuntar a instalaciones individuales. Este modo no se puede combinar con otros selectores, exclusiones o filtros.

  • --all-apps selecciona todas las aplicaciones que coinciden con los filtros proporcionados. Los filtros y las exclusiones solos nunca seleccionan aplicaciones.

  • Restrinja las selecciones con --search, --platform, --device, --group, --ungrouped, --favorites, y --new. Reste objetivos con repetible --exclude-app, --exclude-app-version, y --exclude-app-install.

  • La confirmación siempre es requerida. Use --yes para ejecución no interactiva.

⚠️ ADVERTENCIA: app uninstall informa que la solicitud fue enviada, no que la eliminación se completó. Su recuento de instalaciones es un recuento de selección previa al vuelo; el servidor evalúa la selección en vivo y los dispositivos sin conexión pueden omitirse. Revise el ámbito seleccionado antes de confirmar y luego verifique app installs más tarde para verificar que la aplicación ya no aparece reportada.

Comandos de campos personalizados

Comando

Propósito

customfield list

Listar los campos personalizados de la organización.

customfield get <field>

Obtener un campo personalizado.

customfield create

Crear un campo.

customfield update <field>

Actualizar un campo.

customfield delete <field>...

Eliminar campos.

customfield set <field> <value>

Establecer un valor a nivel de organización.

customfield clear <field>

Borrar un valor a nivel de organización.

device customfield ...

Listar, establecer o borrar valores a nivel de dispositivo.

device group customfield ...

Listar, establecer o borrar valores de grupo de dispositivos.

Los valores de los campos personalizados se heredan de la organización al grupo de dispositivos y al dispositivo. Las operaciones de establecimiento o borrado en cascada pueden sobrescribir o eliminar valores descendientes.

Comandos de dispositivos

Comando

Propósito

device list

Listar y filtrar dispositivos.

device get <device>

Obtener detalles del dispositivo.

device restart <device>...

Solicitar un reinicio.

device shutdown <device>...

Solicitar un apagado.

device maintenance enable|disable <device>...

Cambiar el modo de mantenimiento.

device update <device>

Actualizar las propiedades editables del dispositivo.

device delete <device>...

Eliminar dispositivos permanentemente.

device favorite|unfavorite <device>...

Cambiar el estado de favorito.

device flag|unflag <device>...

Cambiar el estado de marcador.

device export

Exportar dispositivos como CSV.

device install-key

Imprimir una clave de instalación del agente para el aprovisionamiento.

device group ...

Administrar grupos de dispositivos y asignaciones.

device customfield ...

Administrar valores de campos personalizados del dispositivo.

Las solicitudes de reinicio y apagado ejecutan la acción de inmediato y no esperan a que el dispositivo la complete.

⚠️ ADVERTENCIA:device install-key imprime una credencial de aprovisionamiento en la salida estándar. Evite exponerla en el historial del shell, terminales compartidas o registros de CI.

Comandos de archivos

Comando

Propósito

file list

Listar archivos del repositorio.

file get <file>

Obtener metadatos de archivos.

file upload <path>...

Subir archivos locales.

file download <file> [<dest>]

Descargar un archivo. Use - como destino para la salida estándar.

file rename <file> <filename>

Renombrar un archivo del repositorio.

file replace <file> <path>

Reemplazar el contenido del archivo preservando el ID del archivo del repositorio.

file delete <file>...

Eliminar archivos permanentemente.

file storage

Mostrar el uso de almacenamiento.

file group ...

Administrar grupos de archivos del repositorio.

file download --overwrite puede reemplazar un archivo local existente. Reemplazar un archivo del repositorio cambia el contenido utilizado por las automatizaciones que hacen referencia a ese ID de archivo.

Comandos de monitores

Comando

Propósito

monitor list

Listar monitores en todas las políticas.

monitor get <monitor>

Obtener un monitor.

monitor add <policy>

Agregar un monitor a una política a partir de un payload JSON.

monitor update <monitor>

Actualizar un monitor con un payload JSON.

monitor delete <monitor>...

Eliminar monitores.

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

Reemplazar monitores para un dispositivo.

monitor policy list

Listar políticas de monitores.

monitor policy get <policy>

Obtener una política.

monitor policy create

Crear una política a partir de indicadores o una especificación.

monitor policy spec <policy>

Exportar una especificación de política.

monitor policy apply -f <spec>

Reconciliar una política con una especificación.

monitor policy target|untarget <policy>

Administrar etiquetas de destino.

Los comandos de payload de monitores aceptan --json o --json-file. Ejecute lvl monitor add --help para los tipos de monitor compatibles.

La aplicación de política de monitores puede eliminar monitores ausentes del archivo y no es transaccional. Use --dry-run primero.

Comandos de ejecuciones

Comando

Propósito

run list

Listar ejecuciones de automatizaciones y scripts.

run get <run-id>

Obtener una ejecución y sus pasos. Use --wait para sondear hasta completarse.

run cancel

Cancelar ejecuciones por ID o filtros.

run rerun

Iniciar nuevas ejecuciones desde ejecuciones seleccionadas.

run retry <run-id>...

Reintentar ejecuciones fallidas desde el paso fallido.

run approve <run-id>...

Aprobar ejecuciones en pausa en un paso de aprobación.

run deny <run-id>...

Denegar y cancelar ejecuciones en pausa en un paso de aprobación.

run export

Exportar ejecuciones como CSV.

La espera predeterminada es de 15 minutos y devuelve hasta 1.000 líneas de salida por paso. Use --wait-timeout y --output-lines para cambiar esos límites.

Un ERROR o CANCELED el resultado sale con un valor distinto de cero. Un WARNING el resultado se trata como exitoso.

Comandos de scripts

Comando

Propósito

script list

Listar scripts guardados.

script get <script>

Obtener un script guardado. Use --raw para imprimir solo su cuerpo.

script create

Crear un script desde --file o --command.

script update <script>

Actualizar un script guardado.

script delete <script>...

Eliminar scripts.

script run [<script>]

Ejecutar un script guardado, archivo o comando en línea.

script variable ...

Administrar variables de scripts.

script group ...

Administrar grupos de scripts.

Un objetivo de ejecución puede provenir de indicadores repetidos --device indicadores, --group, o ambos. Los objetivos duplicados se ejecutan una vez.

Un script guardado usa su shell almacenado, tiempo de espera y configuración de ejecución como. Las ejecuciones de scripts ad hoc infieren el shell a partir de un indicador explícito, extensión de archivo, shebang o sistema operativo de destino.

⚠️ ADVERTENCIA: ⚠️ ADVERTENCIA: La creación de scripts y las ejecuciones de scripts ad hoc usan de forma predeterminada la configuración de SYSTEM configuración de ejecución como. Revise el script y la lista de destinos antes de la ejecución.

Comandos de habilidades

Comando

Propósito

skill show

Imprimir el SKILL.md.

skill install

Instalar la habilidad para el usuario actual.

skill install --project

Instalar la habilidad en el proyecto actual.

skill uninstall

Eliminar la habilidad instalada para el usuario actual.

skill uninstall --project

Eliminar la habilidad instalada en el proyecto actual.

skill describe [<command>...]

Imprimir definiciones de indicadores y salida JSON.

Una habilidad de nivel de usuario instalada con lvl skill install se actualiza automáticamente cuando se ejecutan comandos de CLI documentados normales, por lo que permanece alineado con el binario instalado. Las habilidades a nivel de proyecto no se actualizan automáticamente. Ejecute lvl skill install --project nuevamente después de actualizar lvl cuando un repositorio debe recibir el nuevo árbol de comandos.

Comandos de etiquetas

Comando

Propósito

tag list

Listar etiquetas.

tag get <tag>

Obtener una etiqueta.

tag create

Crear una etiqueta.

tag update <tag>

Actualizar una etiqueta.

tag delete <tag>...

Eliminar etiquetas sin uso.

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

Asignar una etiqueta a dispositivos.

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

Eliminar una etiqueta de dispositivos.

Comandos de actualizaciones

Comando

Propósito

update list

Listar actualizaciones disponibles, instaladas o todas.

update get <update-id>

Obtener una actualización.

update check <device>...

Solicitar un análisis de actualizaciones.

update install

Instalar las actualizaciones seleccionadas.

update retry

Reintentar instalaciones fallidas seleccionadas.

update install-all

Instalar las actualizaciones disponibles en los dispositivos seleccionados.

update log list|get

Revisar registros e historial de instalación de actualizaciones.

update summary list

Listar resúmenes de actualizaciones.

update device list

Listar dispositivos en el contexto de actualización.

update exclusion list|create|update|delete

Administrar exclusiones globales de KB.

La instalación de actualizaciones, el reintento y la instalación de todas permiten reinicios requeridos de forma predeterminada. Use --no-reboot cuando el comando seleccionado no debe reiniciar un dispositivo.

⚠️ ADVERTENCIA: Revise las selecciones de actualización y dispositivo antes de la instalación. Las operaciones basadas en filtros y de todos los dispositivos requieren confirmación explícita.

Comandos de grupos

Los grupos de dispositivos, scripts, automatizaciones y archivos comparten estos subcomandos:

  • list

  • create

  • rename

  • move

  • delete

  • assign

  • unassign

Las listas de grupos obtienen la jerarquía completa. Eliminar un grupo requiere que esté vacío y no tenga grupos secundarios.

Confirmación y trabajo asincrónico

Los comandos de eliminación permanente admiten --yes. En una terminal interactiva, la CLI puede solicitar confirmación. En la ejecución no interactiva, los comandos que requieren confirmación fallan a menos que se proporcione --yes se proporciona.

Algunos comandos regresan después de que Level acepta la solicitud, antes de que el trabajo finalice en un dispositivo. Esto incluye acciones de energía, comprobaciones e instalaciones de actualizaciones, scripts, automatizaciones y ejecuciones de desencadenadores. Use el historial de ejecuciones, run get --wait, registros de actualización o la aplicación web de Level para confirmar el resultado final.

¿Ha quedado contestada tu pregunta?