Monitoree cualquier condición del dispositivo ejecutando un script y evaluando su salida contra un umbral o coincidencia de cadena. Los monitores de script ejecutan un script en dispositivos objetivo en un cronograma configurado y evalúan la salida contra una condición que defina — si se cumple la condición, Level genera una alerta.
Donde los tipos de monitor integrados cubren condiciones comunes (CPU, memoria, disco, conectividad), los monitores de script cubren todo lo demás: estado del firewall, vencimiento del certificado, cumplimiento de licencias, salud personalizada de la aplicación, desviación de configuración y cualquier otra característica del dispositivo que pueda exponer con un script. El script se ejecuta localmente en el dispositivo, por lo que no hay gastos generales de llamadas externas — solo acceso directo y eficiente a lo que el sistema operativo puede reportar.
Monitores de Script
Level ejecuta el script seleccionado en dispositivos cubiertos en su frecuencia configurada. Después de cada ejecución, lee la salida completa de la consola y la evalúa contra su condición de Salida del script y Valor. Si la condición se cumple durante el número de ejecuciones consecutivas definido por su Recuento de activación, se genera una alerta.
La evaluación es sencilla por diseño: el script emite algo, el monitor verifica si esa salida coincide con su condición. El script no necesita terminar con un código específico — lo que importa es la salida.
ℹ️ NOTA: Level evalúa toda la salida del script, no solo la primera o última línea. Tenga esto en cuenta al escribir scripts que producen salida multilínea.
Crear el Script
Antes de configurar el monitor, escriba y guarde el script que ejecutará. Cualquier idioma compatible funciona: PowerShell, Bash, Zsh, Python, Go, Ansible u osquery.
💡 CONSEJO: osquery se ejecuta en Windows, macOS y Linux — un único script osquery puede alimentar monitores en las tres plataformas sin mantener scripts separados por sistema operativo.
El script debe emitir un valor o estado que Level pueda evaluar limpiamente — un número, una cadena como True/False, o una palabra conocida como Enabled. El monitor luego compara esa salida con su umbral.
💡 CONSEJO: Para verificaciones complejas donde se deben evaluar múltiples condiciones dentro del script, emita una palabra desencadenante conocida (como ALERT) cuando la condición sea poco saludable, y configure el monitor para Contiene ALERT. Esto mantiene la lógica de paso/fallo dentro del script manteniendo la configuración del monitor simple.
Configuración de un Monitor de Script
Abra la política de monitor objetivo, luego agregue o edite un monitor de script. El panel Editar monitor se abre a la derecha.
Nombre y Tipo
1. Ingrese un nombre en el campo Nombre. El nombre aparece en la alerta, así que hágalo descriptivo — "Firewall de Windows desactivado" es inmediatamente procesable; "Monitor de script 4" no lo es.
2. Configure Tipo en Ejecutar script.
Gravedad
Configure Gravedad según el impacto de la condición que este script detecta:
Información
Advertencia
Crítico
Emergencia
Sistema Operativo
Seleccione el sistema operativo en el que debería ejecutarse el script: Windows, macOS o Linux. El monitor solo se ejecutará en dispositivos que ejecuten el sistema operativo seleccionado.
Script
Seleccione el script a ejecutar en el campo Script. Haga clic en el icono de enlace para abrir el script y revisarlo o editarlo. Haga clic en Probar script para ejecutar el script contra dispositivos objetivo inmediatamente e inspeccionar la salida sin procesar — útil para confirmar que el script devuelve lo que espera antes de que el monitor se active.
Salida del Script
Salida del script define cómo Level compara la salida de la consola del script con su Valor. La lista completa de operadores:
Igual a — la salida coincide exactamente con el valor
No es igual a — la salida no coincide con el valor
Contiene — la salida incluye el valor como una subcadena
No contiene — la salida no incluye el valor
Mayor que — la salida (numérica) es mayor que el valor
Mayor o igual a — la salida (numérica) es mayor que o igual al valor
Menor que — la salida (numérica) es menor que el valor
Menor o igual a — la salida (numérica) es menor que o igual al valor
ℹ️ NOTA: La salida completa de la consola de su script se convierte en la carga útil de la alerta. Cuando se dispara una alerta, la salida del script es visible directamente en los detalles de la alerta — por lo que todo lo que escriba en la consola (nombre del dispositivo, valores detectados, detalles del error) aparecerá allí. Escribir contexto útil en su salida hace que las alertas sean mucho más fáciles de actuar sin tener que profundizar más.
Valor
Ingrese el valor a comparar con la salida del script en el campo Valor. Para operadores numéricos, ingrese un número. Para operadores de cadena, ingrese la cadena exacta.
💡 CONSEJO: El patrón recomendado es emitir ALERT (con cualquier detalle adicional útil para investigar) cuando una condición sea poco saludable, y configurar Salida del script en Contiene ALERT. Esto funciona limpiamente con salida multilínea, incluye cualquier detalle que agregue después de la palabra clave y mantiene la alerta legible. Configure el monitor en No contiene ALERT si desea invertir la lógica.
Frecuencia de Ejecución
Frecuencia de ejecución controla con qué frecuencia se ejecuta el script en dispositivos objetivo. Configure la unidad (Minutos u Horas) y el valor usando el control deslizante o las flechas arriba/abajo. El rango es de 1 a 120 minutos u 1 a 24 horas.
⚠️ ADVERTENCIA: Ejecutar scripts con una frecuencia muy alta puede afectar el rendimiento del dispositivo, particularmente en hardware de gama baja o si el script en sí requiere muchos recursos. Comience con un intervalo más largo y redúzcalo solo si su caso de uso realmente lo requiere.
Recuento de Activación
Recuento de activación define cuántas ejecuciones de script consecutivas deben coincidir con la condición antes de que Level cree una alerta. Use las flechas arriba/abajo para establecer el valor.
Un recuento de activación de 1 dispara una alerta en la primera ejecución coincidente. Los valores más altos requieren que la condición persista en múltiples ejecuciones antes de alertar — útil para condiciones que podrían aparecer brevemente debido al tiempo (un script ejecutándose en medio de una operación, por ejemplo).
Resolución Automática
Resolver automáticamente la alerta si ya no es aplicable cierra la alerta automáticamente cuando una ejecución de script posterior ya no coincide con la condición. Habilitado de forma predeterminada.
Déjelo habilitado para condiciones que realmente se despejam (un valor que vuelve a caer por debajo de un umbral, una cadena que ya no aparece en la salida). Desactívelo si desea que las alertas persistan para revisión manual.
Remediación
Adjunte una o más automatizaciones para ejecutar cuando se active este monitor — empuje una solución de configuración, reinicie un servicio o notifique a su equipo.
Haga clic en el campo Remediación y seleccione una automatización.
Para agregar más, haga clic en + Agregar otra remediación.
Para eliminar una, haga clic en el × junto a ella.
ℹ️ NOTA: Las remediaciones se ejecutan cuando se crea la alerta, no cuando se resuelve.
Notificaciones
Enviar notificaciones en la creación de alertas — los destinatarios de la política reciben un correo electrónico cuando se dispara la alerta
Enviar notificaciones en la resolución de alertas — los destinatarios de la política reciben un correo electrónico cuando se resuelve la alerta
Los destinatarios se administran a nivel de política de monitor, en la sección Destinatarios.
Guardar el Monitor
Haga clic en Actualizar monitor para guardar los cambios, o Agregar monitor al agregar uno nuevo. El monitor se inicia inmediatamente, con ejecuciones posteriores programadas a partir del tiempo de creación según su frecuencia configurada.
Ejemplos e Inspiración
Para ejemplos funcionales completos que muestren cómo escribir un script y configurar el monitor alrededor de él, consulte Ejemplos de Monitor de Script.
La Biblioteca Level en level.io/library tiene una colección curada de scripts listos para usar y políticas de monitor que puede importar en su cuenta con un clic. Es un buen punto de partida si desea implementar algo inmediatamente o simplemente desea ver cómo otros han abordado un problema de monitoreo particular.
Mejores Prácticas
Utilice una centinela ALERT como su patrón de salida estándar. El enfoque recomendado: escriba scripts para emitir ALERT (con cualquier detalle adicional después) cuando el dispositivo esté en un estado poco saludable, luego configure el monitor en Contiene ALERT. Esto funciona de manera confiable con salida multilínea, es fácil de escanear en la lista de alertas y mantiene la lógica de paso/fallo dentro del script donde pertenece.
Script PowerShell
if ($condition) {
Write-Output "ALERT: $details"
exit 1
} else {
Write-Output "OK"
exit 0
}Mantenga la lógica de evaluación en el monitor para verificaciones simples. Cuando un script produce un valor único y limpio — un número, True/False, Enabled/Disabled — configure la comparación en el monitor en lugar de en el script. Esto hace que el monitor sea más fácil de entender y ajustar sin tocar el script.
Comience con una frecuencia de ejecución más larga. Reducir un intervalo es fácil; lidiar con el impacto de rendimiento de un script ejecutándose demasiado a menudo es más difícil. La ejecución de alta frecuencia puede afectar dispositivos de gama baja, especialmente si el script realiza trabajo significativo.
Utilice osquery para cobertura multiplataforma. osquery se ejecuta en Windows, macOS y Linux y expone el estado del dispositivo a través de una interfaz similar a SQL. Un único script osquery a menudo puede reemplazar tres scripts separados específicos del sistema operativo.
Pruebe antes de implementar. Utilice Probar script para ejecutar el script contra un dispositivo objetivo e inspeccionar la salida sin procesar antes de que el monitor se active. Esto captura sorpresas de formato de salida — espacio en blanco adicional, saltos de línea inesperados, salida multilínea — antes de que silenciosamente rompan su monitor.
FAQ
¿Quién puede crear y editar monitores de script? Técnicos con acceso a la política de monitor relevante. La configuración de permisos se administra en Espacio de trabajo → Permisos.
¿Cómo difiere un monitor de script de ejecutar un script a través de una automatización? Una automatización ejecuta un script en respuesta a un desencadenante (un horario, una alerta, una acción manual). Un monitor de script ejecuta un script en un cronograma recurrente específicamente para evaluar la salud del dispositivo y generar una alerta si se cumple una condición. Utilice monitores para verificaciones de salud continuas, automatizaciones para tareas reactivas u ocasionales.
¿Puedo utilizar el mismo script en múltiples monitores? Sí. Un único script puede ser referenciado por tantos monitores como sea necesario, en diferentes políticas. Si actualiza el script, todos los monitores que lo usan recogerán el cambio en su siguiente ejecución.
Mi monitor de script no se dispara aunque sé que la condición es verdadera. ¿Qué debo verificar? Utilice Probar script para ejecutar el script contra un dispositivo objetivo e inspeccionar la salida sin procesar. Problemas comunes: la salida tiene espacios en blanco antes/después que rompen una coincidencia exacta Igual a, la salida es multilínea y el valor coincidente se pierde, o el script se ejecuta en dispositivos que no coinciden con el sistema operativo esperado.
¿Qué sucede con las alertas de monitor de script abiertas si elimino el monitor? Las alertas existentes permanecen en su lugar. Eliminar un monitor no cierra las alertas que ya creó — resuélvalas manualmente.











