Este es un módulo técnico para enviar alertas pasivas a tu daemon NSCA favorito (Nagios, Shinken...). Este módulo se basa en el sistema cron de Odoo y requiere un cliente NSCA instalado en el sistema para satisfacer el comando /usr/sbin/send_nsca.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 16.0Configure servidores de monitorización y comprobaciones programadas que envían alertas pasivas desde Odoo a un daemon NSCA (Nagios, Shinken, etc.).
Este módulo añade un nuevo menú 'NSCA Client' bajo el menú Custom, con dos pantallas: Servers y Checks.
En la pantalla Servers se registra cada servidor de monitorización: hostname, puerto, contraseña, método de cifrado y el hostname del nodo de Odoo actual. Se escribe automáticamente un archivo de configuración cuando se crea o modifica un servidor, y un botón en el formulario del servidor muestra cuántos checks están vinculados a él y los abre.
En la pantalla Checks se definen los checks programados. Cada check está vinculado a un servidor, tiene un nombre de servicio, una frecuencia (número de intervalo y tipo), una fecha de próxima llamada y un indicador de activo. También se elige el modelo y el método de Odoo que se van a ejecutar, además de argumentos opcionales. El método debe devolver un código de resultado y un mensaje (0 OK, 1 WARNING, 2 CRITICAL, 3 UNKNOWN); si no devuelve nada, se envía un mensaje CRITICAL a menos que marque 'Allow void result'. Cualquier error se informa como CRITICAL.
Los checks se ejecutan a través del sistema de trabajos programados de Odoo y envían su resultado al demonio NSCA mediante el comando send_nsca, que debe estar instalado en el servidor. Un método de estado integrado informa del número de CPU, RAM y usuarios en línea. El acceso está limitado al grupo ERP manager.
Depende de
Menús que añade
Modelos y campos (2)
- nsca.check · modelo nuevocron_id (Cron), service, nsca_args (Arguments), server_id (Server), nsca_model (NSCA Model), nsca_function (Method), allow_void_result (Allow void result)
- nsca.server · modelo nuevoname (Hostname), port, password, check_ids (Checks), check_count, node_hostname (Hostname of this node), config_dir_path (Configuration directory), config_file_path (Configuration file), encryption_method (Encryption method)
Texto generado por IA (DeepSeek) al leer el código de la versión 16.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 4 confirmadas, 5 sin información de 9 versiones.
Fuentes · Odoo 16.0
Confirmado el 2026-11-03 en la rama 16.0 de OCA/server-tools.
terminal Instalación y uso
Documentación de OCA · Odoo 16.0Instalación
Fuente · Odoo 16.0Para usar este módulo, necesita instalar un cliente NSCA.
En Debian/Ubuntu:
$ sudo apt-get install nsca-clientConfiguración
Fuente · Odoo 16.0Para configurar este módulo, necesita:
- Configurar su servidor y un servicio pasivo en su herramienta de monitorización (p. ej. el servicio
Odoo Mail Queueen el hostMY-SERVER). - Declarar su servidor NSCA en el menú Configuration / Technical / NSCA Client / Servers
- Crear comprobaciones NSCA en el menú Configuration / Technical / NSCA Client / Checks
- Codificar los métodos que serán llamados por las comprobaciones NSCA.
Dichos métodos deben devolver una tupla (RC, MESSAGE, PERFORMANCE_DATA) donde RC es un entero, MESSAGE una cadena unicode Y PERFOMANCE_DATA es un diccionario. Los valores de RC y el estado correspondiente son:
- 0: OK
- 1: WARNING
- 2: CRITICAL
- 3: UNKNOWN
PERFORMANCE_DATA no es obligatorio, por lo que podría ser posible enviar (RC, MESSAGE). Cada elemento de PERFORMANCE_DATA será un diccionario que podría contener:
- value: valor del dato (obligatorio)
- max: Valor máximo en el gráfico
- min: Valor mínimo en el gráfico
- warn: Valor de advertencia en el gráfico
- crit: Valor crítico en el gráfico
- uom: Unidad de medida en el gráfico (s - Seconds, % - Percentage, B - Bytes, c - Continuous)
La clave del diccionario se utilizará como etiqueta de performance_data.
Ej.:
class MailMail(models.Model):
_inherit = 'mail.mail'
@api.model
def nsca_check_mails(self):
mails = self.search([('state', '=', 'exception')])
if mails:
return (1, u"%s mails not sent" % len(mails), {
'exceptions': {'value': len(mails)}})
return (0, u"OK", {'exceptions': {'value': len(mails)}})En el ejemplo, los datos de rendimiento utilizarán la etiqueta exceptions y el valor será el número de excepciones de correos.
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Uso.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.