Go to main content

Guía de administración de Oracle® ZFS Storage Appliance, versión OS8.8.x

Salir de la Vista de impresión

Actualización: Agosto de 2021
 
 

Creación y publicación de alertas personalizadas dentro de un flujo de trabajo

Puede publicarse una alerta dentro de un flujo de trabajo en respuesta a un evento definido en el flujo de trabajo. La acción de alerta puede crearse en el flujo de trabajo o a través de la BUI o la CLI. La alerta debe publicarse dentro del flujo de trabajo.

Pueden utilizarse alertas personalizadas para ayudar a garantizar la conformidad o las políticas administrativas. Las alertas personalizadas también pueden ayudar a diagnosticar problemas en un flujo de trabajo.

La siguiente tabla describe las autorizaciones que debe tener un usuario para crear acciones de alerta personalizadas y publicar alertas personalizadas.

Tabla 160  Autorizaciones requeridas para utilizar alertas personalizadas
Tarea
Autorización de BUI
Autorización de CLI
Descripción
Crear una acción de alerta personalizada
Ámbito: alertas
Autorización: configurar
Ámbito: alert
Autorización: allow_configure
Necesario para crear una acción de alerta personalizada utilizando la BUI, la CLI o la función createalert en un flujo de trabajo.
Publicar una alerta personalizada
Ámbito: alertas
Autorización: publicación
Ámbito: alert
Autorización: allow_post
Necesario para usar la función postalert en un flujo de trabajo.
Ejecutar un flujo de trabajo
Ámbito: flujo de trabajo
Autorización: lectura
Ámbito: workflow
Autorización: allow_read
Necesario para ejecutar un flujo de trabajo.

Para acceder a instrucciones sobre cómo otorgar autorizaciones a usuarios, consulte Configuración de usuarios.

Creación de una alerta personalizada

Utilice uno de los siguientes métodos para crear una alerta personalizada:


Notas -  Cada vez que se invoca createalert, se crea una nueva alerta con un UUID diferente. En lugar de crear más copias de la misma acción de alerta cada vez que se ejecuta un flujo de trabajo que utiliza createalert, quizás le convenga utilizar la BUI o la CLI para crear una acción de alerta y luego pasar el UUID de esa acción de alerta a la función postalert, como se muestra en Ejemplo 20, Publicación de una alerta personalizada con un UUID de acción de alerta existente.

La función createalert toma los siguientes parámetros y devuelve el UUID de la acción de alerta personalizada que se ha creado.

Tabla 161  Parámetros de la función createalert
Parámetro
Tipo
Descripción
actions
Objeto
Necesario. Una lista de controladores (acciones de alerta) junto con los argumentos correspondientes. Consulte la columna "Tipo de acción de la CLI" en Tabla 49, Tipos de acciones de alerta.

Notas -  Si se especifica execute_workflow como acción (handler), el flujo de trabajo ejecutado no podrá publicar una alerta.

severity
Cadena
Opcional. Gravedad del evento que generó la alerta. Los valores válidos son: crítico, menor o grave.
description
Cadena
Necesario. Una descripción del evento que generó la alerta.
response
Cadena
Opcional. Una descripción de las acciones que realizará el sistema para mitigar los efectos de este evento.
impact
Cadena
Opcional. Una descripción del efecto que este evento tiene sobre el dispositivo.
recommended_action
Cadena
Opcional. Una descripción de las acciones que debe realizar el administrador para mitigar los efectos de este evento.
Ejemplo 18  Creación de una alerta personalizada dentro de un flujo de trabajo

Este ejemplo muestra un flujo de trabajo que crea una alerta personalizada con el UUID custom_alert_uuid.

var workflow = {
    name:        'createalert',
    description: 'Create a Custom Alert',
    version:     '1.0',
    origin:      'Oracle',
    alert:       false,
    setid:       true,
    execute:     function () {
                     var actions = [{
                         handler: 'email',
                         args: {
                             address: 'admin@example.com',
                             subject: 'Custom Alert Response'
                         }
                     }];
                     var createparams = {
                         description: 'createalert from within a workflow'
                     };
                     var custom_alert_uuid = createalert(actions, createparams);
                 }
};

Al crear una alerta personalizada con un flujo de trabajo, la alerta aparece en la lista de acciones de alerta en la BUI y la CLI.

Al crear una alerta personalizada con un flujo de trabajo, se crea una entrada del log de auditoría con el siguiente resumen:

Workflow name_of_workflow: created custom alert value_of_custom_alert_uuid

Al crear una alerta personalizada con la BUI o la CLI, o a través de la ejecución de una secuencia de comandos (con el comando script), se crea una entrada del log de auditoría con el siguiente resumen:

Created custom alert value_of_custom_alert_uuid

Publicación de una alerta personalizada

Utilice la función postalert para publicar una alerta personalizada dentro de un flujo de trabajo en respuesta a un evento que se produce en ese flujo de trabajo.

La función createalert puede invocarse dentro de una secuencia de comandos a través del comando script, mientras que la función postalert solo puede invocarse dentro de una definición de flujo de trabajo.

La función postalert toma los mismos parámetros que la función createalert, salvo el primer parámetro: createalert toma una lista de controladores o acciones de alerta, y postalert toma el UUID de la alerta que se publicará. Para conocer las descripciones del resto de los parámetros, consulte Tabla 161, Parámetros de la función createalert.

Los valores de los parámetros que son opciones para createalert (severity, response, impact y action) no son opcionales para postalert. Para la llamada postalert, estos valores se determinan en función de las siguientes reglas:

  • Si se proporcionan valores de parámetros opcionales para createalert, pero no para la llamada postalert de ese UUID, la llamada postalert hereda esos valores de parámetros de la llamada createalert correspondiente.

  • Si no se proporcionan valores de parámetros opcionales para createalert, pero sí para la llamada postalert de ese UUID, la llamada postalert utiliza los valores especificados en la llamada postalert.

  • Si se proporcionan valores de parámetros opcionales tanto para createalert como para la llamada postalert correspondiente, cada llamada utiliza los valores de parámetros especificados en esa llamada.

  • Si no se proporcionan valores de parámetros opcionales para la llamada createalert ni para la llamada postalert correspondiente, un mensaje de error le indica al usuario que proporcione valores para la llamada postalert.

La función postalert devuelve el UUID de la alerta personalizada que se ha publicado.

Ejemplo 19  Creación y publicación de una alerta personalizada dentro de un flujo de trabajo

Este ejemplo publica la alerta que se creó en Ejemplo 18, Creación de una alerta personalizada dentro de un flujo de trabajo. La llamada postalert se realiza en respuesta a un evento que se produjo en el flujo de trabajo. En este ejemplo, se omite el código que define el evento que ocurre antes de la llamada postalert.

var workflow = {
    name:        'createalert and postalert',
    description: 'Create and Post a Custom Alert',
    version:     '1.0',
    origin:      'Oracle',
    alert:       false,
    setid:       true,
    execute:     function () {
                     var actions = [{
                         'handler': 'resume_dataset',
                         'args': {
                             'dataset': 'dataset_to_resume'
                         }
                     }];
                     var createparams = {
                         description: 'createalert and postalert from within a workflow'
                     };
                     var postparams = {
                         severity: 'Minor',
                         description: 'postalert from within a workflow',
                         response: 'The alert action resumes dataset dataset_to_resume',
                         impact: 'What happened to the appliance',
                         recommended_action: 'What the administrator should do'
                     };
                     var custom_alert_uuid = createalert(actions, createparams);
                     var posted_alert_uuid = postalert(custom_alert_uuid, postparams);
                 }
};

Al ejecutar un flujo de trabajo que invoca la función postalert, se crea una entrada de log de alerta con el siguiente resumen:

Custom: name_of_workflow
Ejemplo 20  Publicación de una alerta personalizada con un UUID de acción de alerta existente

En lugar de propagar copias de la misma acción de alerta, quizás le convenga utilizar el UUID de una alerta personalizada existente como primer argumento de la función postalert.

  1. Utilice la BUI, la CLI, una secuencia de comandos, un flujo de trabajo o la API de RESTful para crear una acción de alerta personalizada.

  2. Utilice la BUI, la CLI o el log de auditoría para recuperar el UUID de la acción de alerta personalizada.

  3. Utilice el UUID recuperado como primer argumento de la función postalert.

var workflow = {
    name:        'postalert',
    description: 'Post a Custom Alert using existing uuid',
    version:     '1.0',
    origin:      'Oracle',
    alert:       false,
    setid:       true,
    execute:     function () {
                     var postparams = {
                         severity: 'Minor',
                         description: 'postalert from within a workflow',
                         response: 'What the system will do',
                         impact: 'What happened to the appliance',
                         recommended_action: 'What the administrator should do'
                     };
                     var posted_alert_uuid = postalert('uuid_of_existing_custom_alert', postparams);
                 }
};