September 22 — Documentation updated for compatibility with the latest PAM version (5.3.0).
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Biblioteca de scripts

Mantenga la biblioteca de scripts en Management › Scripts: cree, suba, clone, pruebe, marque como favorito, oculte y descargue scripts, y reutilice código con snippets.

Qué es y cuándo usarlo

La biblioteca de scripts es el único lugar donde SONAR guarda los scripts que ejecuta en los dispositivos. Todo script que se ejecuta desde la consola sale de aquí: Run Script en un dispositivo, Tools › Bulk Script en muchos, las acciones de script de las tareas automatizadas, los checks de script y las acciones de las plantillas de alerta. Un script lleva sus propios valores predeterminados (shell, argumentos, variables de entorno, tiempo límite, plataformas compatibles), así que quien lo ejecute después solo cambia lo que sea distinto.

Use la biblioteca para escribir un script una sola vez, probarlo en un dispositivo antes de que llegue a todo el parque y guardar bloques de código reutilizables como snippets.

Antes de empezar

  • Un rol con List Scripts para abrir la biblioteca, y Manage Scripts para crear, subir, clonar, editar o eliminar scripts y snippets. Ambos permisos están en el grupo Scripts de Admin Center › Roles.

  • Para probar un script, Run Scripts (grupo System) y acceso al dispositivo en el que lo prueba. El dispositivo debe estar en línea.

  • En Linux y macOS, un script de tipo Shell o Python necesita un shebang en su primera línea, por ejemplo #!/bin/bash o #!/usr/bin/python3.

Pasos

Crear un script

  1. Abra Management › Scripts.

  2. Haga clic en el botón + y elija New Script.

  3. Rellene Name, Shell Type y, si el script no es para todas las plataformas, Supported Platforms. Vea la referencia de campos más abajo.

  4. Escriba o pegue el código en el editor, a la derecha.

  5. Si lo desea, fije Category, Script Arguments, Environment vars, Timeout (seconds), Run As User (Windows only) y Syntax.

  6. Haga clic en Save.

Subir un script desde un archivo

  1. Abra Management › Scripts, haga clic en + y elija Upload Script.

  2. En Add Script, rellene Name y elija el archivo en Script Upload.

  3. Fije Type, Supported Platforms, Category, Script Arguments, Environment Variables y Default Timeout según haga falta.

  4. Haga clic en Add. El contenido del archivo pasa a ser el cuerpo del script.

Probar un script en un dispositivo

  1. Abra el script con un doble clic, o haga clic en él con el botón derecho y elija Edit.

  2. En Agent to run test script on, en la parte inferior del cuadro de diálogo, elija el dispositivo.

  3. Haga clic en Test Script. El cuadro de diálogo Script Test ejecuta el código que hay en ese momento en el editor, con los argumentos, las variables de entorno, el tiempo límite y la opción Run As User del formulario, y espera el resultado.

  4. Lea Run Time, Return Code, Standard Output y Standard Error.

  5. Guarde el script solo cuando el resultado sea el esperado.

La prueba usa lo que hay en el editor, esté guardado o no, así que puede hacer varios intentos sin guardar cada uno.

Clonar, marcar como favorito, ocultar, descargar o eliminar

Haga clic con el botón derecho en un script de la lista para abrir su menú:

Entrada del menú
Qué hace

View Code

Abre el script en solo lectura, con los snippets ya expandidos

Clone

Abre para edición una copia llamada (Copy) <name>. Es la forma de adaptar un script integrado

Edit

Abre el script para editarlo. No está disponible para los scripts integrados

Delete

Elimina el script tras una confirmación. No está disponible para los scripts integrados

Add as Favorite / Remove as Favorite

Marca el script como favorito. Los favoritos aparecen en Run Favorited Script en el menú de acciones de cada dispositivo

Download Script

Guarda el script en un archivo con su nombre y la extensión de su shell (.ps1, .bat, .py, .sh, .nu, .ts), con los snippets expandidos

Hide Script / Show Script

Oculta el script de la biblioteca y de los selectores de scripts con los que se ejecuta

Los favoritos y los scripts ocultos son propiedades del script, no del usuario: todos los usuarios de la consola ven los mismos favoritos.

Reutilizar código con snippets

Un snippet es un bloque de código con nombre que SONAR inserta en el cuerpo de un script cuando el script se ejecuta.

  1. En Management › Scripts, abra el menú ⋮ y elija Script Snippets.

  2. Haga clic en New, rellene Name, Shell Type y Description, escriba el código y haga clic en Save.

  3. En el cuerpo de cualquier script, escriba el nombre del snippet entre llaves dobles, por ejemplo {{Write-Log}}.

Cuando el script se ejecuta, se prueba o se descarga, el marcador de posición se sustituye por el código del snippet. Edit muestra el marcador; View Code muestra el resultado expandido. Haga doble clic en un snippet para editarlo; haga clic en él con el botón derecho para eliminarlo.

Los marcadores de valores del dispositivo, el cliente, el sitio, los campos personalizados y el almacén de claves, como {{agent.hostname}}, funcionan en Script Arguments y Environment vars, no en el cuerpo del script. Vea Variables de script.

Qué debe ver

La biblioteca se abre en una tabla con las columnas Favorites, Shell, Platforms, Name, Default Args, Category, Description y Default Timeout (seconds). Un script sin plataformas compatibles muestra All. Los scripts ocultos aparecen en gris cuando Show Hidden Scripts está activado.

El menú ⋮ alterna entre Table y Folders, y muestra u oculta los scripts integrados con Show Community Scripts / Hide Community Scripts. La vista de carpetas agrupa los scripts por categoría, y los que no tienen ninguna quedan en Unassigned.

Tras Save o Add, aparece una confirmación como <name> was added! o <name> was edited! y el script ya está en la lista.

Cómo verificar que funcionó

  1. Busque el script en Management › Scripts con el cuadro de búsqueda y compruebe sus columnas Shell, Platforms, Default Args y Default Timeout (seconds).

  2. Abra Run Script en un dispositivo de una plataforma compatible (vea Ejecutar un comando o un script en un dispositivo). El script aparece en el selector y sus valores predeterminados rellenan el formulario.

  3. Abra Reports & Audits › Audits. La creación, la edición y la eliminación de un script se registran como Add Object, Modify Object y Delete Object sobre un Script. Una ejecución de prueba se registra como Execute Script con el mensaje <user> tested a script on <device>.

Una ejecución de prueba no crea una línea en la pestaña History del dispositivo; las ejecuciones desde Run Script, las acciones masivas y las tareas sí la crean.

Errores comunes

Síntoma
Causa
Solución

El botón + y Edit aparecen atenuados, con el mensaje emergente You don't have permission for this action

El rol no tiene Manage Scripts

Añada el permiso al rol, o pídaselo a alguien que lo tenga

Edit y Delete aparecen atenuados, con Built-in scripts can't be edited o Built-in scripts can't be deleted

El script es integrado

Use Clone y edite la copia

El editor muestra Shell/Python scripts on Linux/Mac need a shebang at the top of the script

Un script Shell o Python no tiene línea #!

Añada la línea del intérprete al principio. Ignore el aviso en los scripts que solo se ejecutan en Windows

Test Script sigue desactivado

No se eligió ningún dispositivo, el cuerpo está vacío o el tiempo límite está vacío

Elija un dispositivo en Agent to run test script on, añada código y un tiempo límite

La prueba no devuelve ninguna salida

El dispositivo está fuera de línea, o el script se ejecutó durante todo su tiempo límite

Compruebe el estado del dispositivo, o aumente Timeout (seconds) y vuelva a probar

Un script no aparece en Run Script

Está oculto, no es compatible con la plataforma del dispositivo, o es integrado y los scripts de la comunidad están ocultos

Use Show Script, añada la plataforma en Supported Platforms, o use Show Community Scripts

Guardar un snippet falla con script snippet with this name already exists.

Los nombres de snippet son únicos

Elija otro nombre

Default Timeout muestra Minimum is 5 en Add Script

No se aceptan tiempos límite inferiores a 5 segundos

Introduzca 5 o más

Referencia de campos

Script (New Script, Edit)

Campo
Qué hace
Valores aceptados
Predeterminado

Name

Identifica el script en la biblioteca y en todos los selectores

Texto, hasta 255 caracteres

Vacío. Obligatorio

Description

Se muestra en la lista

Texto libre

Vacío

Shell Type

Intérprete que ejecuta el script en el dispositivo

Powershell, Batch, Python, Shell, Nushell, Deno

Powershell

Supported Platforms (All supported if blank)

Limita el script a estas plataformas. Los selectores de un dispositivo solo ofrecen los scripts compatibles con su plataforma

Windows, Linux, macOS, se permiten varias

En blanco (todas las plataformas)

Category

Agrupa el script en la vista de carpetas. Elija una categoría existente o escriba una nueva

Texto, hasta 100 caracteres

Vacío (Unassigned)

Script Arguments

Argumentos predeterminados, uno por entrada. Pulse Intro después de cada uno. Pueden contener variables de script

Texto

Ninguno

Environment vars

Variables de entorno predeterminadas, una por entrada, como KEY=VALUE. Pulse Intro después de cada una. El valor puede contener variables de script

Texto

Ninguna

Timeout (seconds)

Tiempo máximo de ejecución predeterminado. Quien ejecuta el script puede cambiarlo

Número entero, 5 o más

90

Run As User (Windows only)

Ejecuta el script en el contexto del usuario que ha iniciado sesión. Si se fija en el script, se aplica siempre y prevalece sobre la opción Run As User elegida al ejecutarlo. Si no hay ningún usuario con sesión iniciada, el script se ejecuta como SYSTEM

Activado o desactivado

Desactivado

Syntax

Texto libre que describe los argumentos esperados. Se muestra a quien ejecuta el script

Texto libre

Vacío

Editor

El cuerpo del script. Puede contener marcadores de snippet como {{Snippet Name}}

Código

Vacío

Agent to run test script on

Dispositivo que usa Test Script

Un dispositivo al que tenga acceso

Ninguno

Upload Script (Add Script)

Campo
Qué hace
Valores aceptados
Predeterminado

Name

Como arriba

Texto

Vacío. Obligatorio

Description

Como arriba

Texto libre

Vacío

Category

Como arriba. Pulse Intro o Tab para añadir un valor nuevo

Texto

Vacío

Script Upload

El archivo cuyo contenido pasa a ser el cuerpo del script

Un archivo de texto

Ninguno. Obligatorio

Type

Igual que Shell Type

Como arriba

Powershell

Supported Platforms (All supported if blank)

Como arriba

Como arriba

En blanco

Script Arguments

Como arriba

Texto

Ninguno

Environment Variables

Como arriba

KEY=VALUE

Ninguna

Default Timeout

Como arriba

5 o más

90

Snippet

Campo
Qué hace
Valores aceptados
Predeterminado

Name

El nombre que se usa en el marcador {{Name}}. Único

Texto, hasta 40 caracteres

Vacío. Obligatorio

Shell Type

Lenguaje del snippet, como referencia y para el resaltado de sintaxis del editor

La misma lista que los scripts

Powershell

Description

Se muestra en la lista de snippets

Texto, hasta 50 caracteres

Vacío

Editor

El código que se inserta en lugar del marcador

Código

Vacío

Páginas relacionadas

Atualizado

Isto foi útil?