Introducción
Supervisa cualquier cosa para la que puedas escribir un script. Los monitores de scripts ejecutan un script en los dispositivos objetivo según un horario definido y evalúan el resultado según una condición que tú estableces — si se cumple la condición, Level genera una alerta.
Donde los tipos de monitores integrados cubren condiciones comunes (CPU, memoria, disco, conectividad), los monitores de scripts cubren todo lo demás: estado del firewall, caducidad de certificados, cumplimiento de licencias, estado de aplicaciones personalizadas, desviación de configuración y cualquier otra característica del dispositivo que puedas obtener con un script. El script se ejecuta localmente en el dispositivo, por lo que no hay sobrecarga de llamadas externas — solo acceso directo y eficiente a lo que el sistema operativo puede reportar.
🎬 VÍDEO
Monitores de scripts
Level ejecuta el script seleccionado en los dispositivos cubiertos con la frecuencia configurada. Después de cada ejecución, lee toda la salida de la consola y la evalúa según tu Salida del script condición y Valor. Si la condición se cumple durante el número de ejecuciones consecutivas definido por tu Conteo de disparadores, se genera una alerta.
La evaluación es simple por diseño: el script genera una salida, el monitor comprueba si esa salida coincide con tu condición. El script no necesita salir 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 la última línea. Ten esto en cuenta al escribir scripts que produzcan salidas de varias líneas.
Crear el script
Antes de configurar el monitor, escribe y guarda el script que ejecutará. Cualquier lenguaje compatible funciona: PowerShell, Bash, Zsh, Python, Go, Ansible u osquery.
💡 CONSEJO: osquery se ejecuta en Windows, macOS y Linux — un único script de osquery puede alimentar monitores en las tres plataformas sin necesidad de mantener scripts separados por sistema operativo.
El script debe generar un valor o estado que Level pueda evaluar de forma clara — un número, una cadena como True/False, o una palabra conocida como Enabled. El monitor luego compara esa salida con tu umbral.
💡 CONSEJO: Para comprobaciones complejas en las que se deben evaluar múltiples condiciones dentro del script, genera una palabra de activación conocida (como ALERT) cuando la condición es poco saludable, y configura el monitor en Contiene ALERT. Esto mantiene la lógica de aprobación/rechazo dentro del script mientras que la configuración del monitor permanece simple.
Configurar un monitor de scripts
Abre la política de monitor objetivo, luego añade o edita un monitor de scripts. El Editar monitor el panel se abre a la derecha.
Nombre y tipo
Introduce un nombre en el Nombre campo. El nombre aparece en la alerta, así que hazlo descriptivo — «Windows Firewall desactivado» es inmediatamente accionable; «Monitor de scripts 4» no lo es.
Establece Tipo a Ejecutar script.
Gravedad
Establece Gravedad según el impacto de la condición que este script está detectando:
Información
Advertencia
Crítico
Emergencia
Sistema operativo
Selecciona el sistema operativo en el que se ejecutará el script: Windows, macOS, o Linux. El monitor solo se ejecutará en dispositivos que usen el sistema operativo seleccionado.
Script
Selecciona el script a ejecutar desde el Script campo. Haz clic en el icono de enlace para abrir el script y revisarlo o editarlo. Haz clic en Probar script para ejecutar el script en los dispositivos objetivo de inmediato e inspeccionar la salida sin procesar — útil para confirmar que el script devuelve lo que esperas antes de que el monitor entre en funcionamiento.
Salida del script
Salida del script define cómo Level compara la salida de la consola del script con tu 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 subcadena
No contiene — la salida no incluye el valor
Mayor que — la salida (numérica) es mayor que el valor
Mayor o igual que — la salida (numérica) es mayor o igual que el valor
Menor que — la salida (numérica) es menor que el valor
Menor o igual que — la salida (numérica) es menor o igual que el valor
ℹ️ NOTA: La salida completa de la consola de tu script se convierte en el contenido de la alerta. Cuando se genera una alerta, la salida del script es visible directamente en los detalles de la alerta — por lo que cualquier cosa que escribas en la consola (nombre del dispositivo, valores detectados, detalles del error) aparecerá allí. Escribir contexto útil en tu salida hace que las alertas sean mucho más fáciles de gestionar sin tener que investigar más.
Valor
Introduce el valor con el que comparar la salida del script en el Valor campo. Para operadores numéricos, introduce un número. Para operadores de cadena, introduce la cadena exacta.
💡 CONSEJO: El patrón recomendado es generar ALERT (con cualquier detalle adicional útil para la investigación) cuando una condición es poco saludable, y configura Salida del script a Contiene ALERT. Esto funciona correctamente con salidas de varias líneas, incluye cualquier detalle que añadas después de la palabra clave y mantiene la alerta legible. Configura el monitor en No contiene ALERT si deseas invertir la lógica.
Frecuencia de ejecución
Frecuencia de ejecución controla la frecuencia con la que el script se ejecuta en los dispositivos objetivo. Establece la unidad (Minutos o Horas) y el valor usando el control deslizante o las flechas arriba/abajo. El rango es de 1 a 120 minutos o de 1 a 24 horas.
⚠️ ADVERTENCIA: Ejecutar scripts con una frecuencia muy alta puede afectar el rendimiento del dispositivo, especialmente en hardware de menor especificación o si el propio script consume muchos recursos. Comienza con un intervalo más largo y redúcelo solo si tu caso de uso realmente requiere una detección más rápida.
Conteo de disparadores
Conteo de disparadores establece cuántas ejecuciones consecutivas del script deben coincidir con la condición antes de que Level cree una alerta. Usa las flechas arriba/abajo para establecer el valor.
Un conteo de disparadores de 1 genera una alerta en la primera ejecución coincidente. Los valores más altos requieren que la condición persista en varias ejecuciones antes de generar la alerta — útil para condiciones que podrían aparecer brevemente debido al momento de ejecución (un script que se ejecuta en medio de una operación, por ejemplo).
Resolución automática
Resolver alerta automáticamente si ya no es aplicable cierra la alerta automáticamente cuando una ejecución posterior del script ya no coincide con la condición. Activado de forma predeterminada.
Deja esto activado para condiciones que realmente se resuelven (un valor que vuelve a caer por debajo de un umbral, una cadena que ya no aparece en la salida). Desactívalo si deseas que las alertas persistan para revisión manual.
Corrección
Adjunta una o más automatizaciones para ejecutar cuando este monitor se dispare — aplica una corrección de configuración, reinicia un servicio o notifica a tu equipo.
Haz clic en el Corrección campo y selecciona una automatización.
Para añadir más, haz clic en + Añadir otra corrección.
Para eliminar una, haz clic en × junto a ella.
ℹ️ NOTA: Las correcciones se ejecutan cuando se crea la alerta, no cuando se resuelve.
Notificaciones
Enviar notificaciones al crear la alerta — los destinatarios de la política reciben un correo electrónico cuando se genera la alerta
Enviar notificaciones al resolver la alerta — los destinatarios de la política reciben un correo electrónico cuando se resuelve la alerta
Los destinatarios se gestionan a nivel de política de monitor, en la Destinatarios sección.
Guardar el monitor
Haz clic en Actualizar monitor para guardar los cambios, o Añadir monitor al añadir uno nuevo. El monitor comienza a ejecutarse inmediatamente, y las ejecuciones posteriores se programan desde el momento de creación según la frecuencia configurada.
Ejemplos e inspiración
Para ejemplos completos paso a paso que muestran cómo escribir un script y configurar el monitor a su alrededor, consulta Ejemplos de monitores de scripts.
El Biblioteca de Level en level.io/library tiene una colección seleccionada de scripts y políticas de monitor listos para usar que puedes importar a tu cuenta con un solo clic. Es un buen punto de partida tanto si deseas implementar algo de inmediato como si solo quieres ver cómo otros han abordado un problema de monitoreo en particular.
Mejores prácticas
Usa un ALERT como tu patrón de salida estándar. El enfoque recomendado: escribe scripts para que generen ALERT (con cualquier detalle adicional a continuación) cuando el dispositivo está en un estado poco saludable, luego configura el monitor en Contiene ALERT. Esto funciona de manera confiable con salidas de varias líneas, es fácil de identificar en la lista de alertas y mantiene la lógica de aprobación/rechazo dentro del script donde corresponde.
Script de PowerShell
if ($condition) {
Write-Output "ALERT: $details"
exit 1
} else {
Write-Output "OK"
exit 0
}Mantén la lógica de evaluación en el monitor para comprobaciones simples. Cuando un script produce un único valor limpio — un número, True/False, Enabled/Disabled — configura 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 tener que modificar el script.
Comienza con una frecuencia de ejecución más larga. Reducir un intervalo es fácil; gestionar el impacto en el rendimiento de un script que se ejecuta con demasiada frecuencia es más difícil. La ejecución de alta frecuencia puede afectar a los dispositivos de menor especificación, especialmente si el script realiza un trabajo considerable.
Usa 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 de osquery puede reemplazar con frecuencia tres scripts separados específicos de cada sistema operativo.
Prueba antes de implementar. Usa Probar script para ejecutar el script en un dispositivo objetivo e inspeccionar la salida sin procesar antes de que el monitor entre en funcionamiento. Esto detecta sorpresas en el formato de salida — espacios en blanco adicionales, saltos de línea inesperados, salidas de varias líneas — antes de que rompan silenciosamente tu monitor.
Preguntas frecuentes
¿Quién puede crear y editar monitores de scripts? Los técnicos con acceso a la política de monitor correspondiente. Los ajustes de permisos se gestionan en Espacio de trabajo → Permisos.
¿En qué se diferencia un monitor de scripts de ejecutar un script mediante una automatización? Una automatización ejecuta un script en respuesta a un disparador (un horario, una alerta, una acción manual). Un monitor de scripts ejecuta un script de forma recurrente específicamente para evaluar el estado del dispositivo y generar una alerta si se cumple una condición. Usa los monitores para comprobaciones de estado continuas, y las automatizaciones para tareas reactivas o puntuales.
¿Puedo usar el mismo script en varios monitores? Sí. Un único script puede ser referenciado por tantos monitores como sea necesario, en diferentes políticas. Si actualizas el script, todos los monitores que lo usen tomarán el cambio en su próxima ejecución.
Mi monitor de scripts no genera alertas aunque sé que la condición es verdadera. ¿Qué debo verificar? Usa Probar script para ejecutar el script en un dispositivo objetivo e inspeccionar la salida sin procesar. Problemas comunes: la salida tiene espacios en blanco al inicio o al final que rompen una coincidencia exacta de Igual a coincidan, la salida es de varias líneas y el valor coincidente se pierde, o el script se está ejecutando en dispositivos que no coinciden con el sistema operativo esperado.
¿Qué sucede con las alertas abiertas de monitores de scripts si elimino el monitor? Las alertas existentes permanecen en su lugar. Eliminar un monitor no cierra las alertas que ya creó — resuélvelas manualmente.











