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/basho#!/usr/bin/python3.
Pasos
Crear un script
Abra Management › Scripts.
Haga clic en el botón + y elija New Script.
Rellene Name, Shell Type y, si el script no es para todas las plataformas, Supported Platforms. Vea la referencia de campos más abajo.
Escriba o pegue el código en el editor, a la derecha.
Si lo desea, fije Category, Script Arguments, Environment vars, Timeout (seconds), Run As User (Windows only) y Syntax.
Haga clic en Save.
Subir un script desde un archivo
Abra Management › Scripts, haga clic en + y elija Upload Script.
En Add Script, rellene Name y elija el archivo en Script Upload.
Fije Type, Supported Platforms, Category, Script Arguments, Environment Variables y Default Timeout según haga falta.
Haga clic en Add. El contenido del archivo pasa a ser el cuerpo del script.
Probar un script en un dispositivo
Abra el script con un doble clic, o haga clic en él con el botón derecho y elija Edit.
En Agent to run test script on, en la parte inferior del cuadro de diálogo, elija el dispositivo.
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.
Lea Run Time, Return Code, Standard Output y Standard Error.
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ú:
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.
Eliminar un script también elimina los checks de script que lo usan, y lo quita de las acciones de las tareas automatizadas. Compruebe dónde se usa un script antes de eliminarlo. Ocultarlo es la alternativa reversible.
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.
En Management › Scripts, abra el menú ⋮ y elija Script Snippets.
Haga clic en New, rellene Name, Shell Type y Description, escriba el código y haga clic en Save.
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ó
Busque el script en Management › Scripts con el cuadro de búsqueda y compruebe sus columnas Shell, Platforms, Default Args y Default Timeout (seconds).
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.
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
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)
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)
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
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?