PagerDuty Tutorial de integración

Descubra cómo integrar Oracle Cloud Infrastructure Notifications con PagerDuty para que pueda disparar incidentes PagerDuty.

Crear un punto final PagerDuty

Para completar este procedimiento, debe tener uno de los siguientes roles en PagerDuty: mánager, administrador, administrador global o rol base de propietarios de cuenta.

  1. Vaya a PagerDuty.
  2. En el menú Configuración, seleccione Servicios.
  3. En la página Services:
    1. Si está creando un servicio para la integración, seleccione +Add Nuevo servicio.
    2. Si está agregando la integración a un servicio existente, seleccione el nombre del servicio al que desea agregar la integración. A continuación, seleccione el separador Integraciones y el botón +New Integration.
  4. Escriba un nombre de integración con el formato monitoring-tool-service-name.

    Si va a crear un servicio para la integración, en Configuración de incidentes, especifique la Política de escalada, la Urgencia de notificación y el Comportamiento de incidente para el nuevo servicio.

  5. Seleccione su tipo de punto final preferido en el menú Tipo de integración según las siguientes opciones:
    • Oracle Cloud Infrastructure Monitoring: si solo desea que los mensajes se publiquen por alarma (mediante el formato de mensaje de alarma). Para este tipo de punto final, PagerDuty responde según el formato de mensaje:

      • Los mensajes que utilizan formatos de mensaje genéricos se ignoran. Por ejemplo, si la regla de evento dispara la publicación de un mensaje en el tema que contiene esta suscripción, o si publica directamente un mensaje en el tema mediante el servicio Notifications, no se crea ningún incidente PagerDuty.
      • Los mensajes que utilizan el formato de mensaje de alarma se procesan. Por ejemplo, si la alarma dispara la publicación de un mensaje en el tema, que tiene el formato de mensaje de alarma, se crea un incidente PagerDuty.
    • Custom Event Transformer: si desea que algún mensaje genere un incidente PagerDuty, ya sea que provenga de reglas de eventos, alarmas, conectores, anuncios de consola o publicaciones directas. Los mensajes enviados a este punto final siguen el formato de mensaje genérico.

      Para obtener más información sobre Custom Event Transformer, consulte la documentación de PagerDuty.

  6. Seleccione el botón Agregar servicio o Agregar integración para guardar la nueva integración.
    Se le redirige a la página Integraciones de su servicio.
  7. Copie la clave de integración y la URL de integración para la nueva integración y manténgala en un lugar seguro para su uso posterior.

    Ejemplo de una PagerDuty clave de integración y una URL de integración (en el momento en que se publicó este documento):

    PagerDuty Clave de integración y URL de integración.
    Ahora tiene la clave de integración necesaria para crear una suscripción PagerDuty en Notifications.

Creación de una suscripción de PagerDuty

Para completar este procedimiento, debe tener acceso a Notifications y permisos para crear temas y suscripciones. Consulte Protección de notificaciones (políticas de IAM).

  1. En la página de lista Topics, seleccione Create Topic. Si necesita ayuda para buscar la página de lista, consulte Lista de temas.
  2. En el panel Crear suscripción, en Protocolo, seleccione PagerDuty.

    El campo URL se muestra con un espacio para agregar la clave de integración.

    Sección Clave de integración del punto final PagerDuty.
    • Protocolo: seleccione PagerDuty.

    • URL

      Escriba (o copie y pegue) la parte de la clave de integración de la URL de la suscripción de PagerDuty. Esta parte es el punto final PagerDuty. (Las otras partes de la URL se codifican).
  3. Haga clic en Crear.

    Se ha creado la suscripción PagerDuty. Permanece en estado "Pendiente" hasta que se recibe la confirmación.

  4. Confirme la nueva suscripción PagerDuty:
    1. Vaya a PagerDuty.
    2. Acceda al incidente titulado "Confirmación de Suscripción al Servicio Oracle Notification"
    3. Seleccione el enlace URL de confirmación.

    Ejemplo de incidente de confirmación (en el momento de la publicación de este documento):

    Ejemplo de incidente de confirmación en PagerDuty.
    Ahora que tiene una suscripción confirmada que hace referencia al punto final PagerDuty, puede probar la integración publicando directamente un mensaje en su tema principal.

Probar una suscripción a PagerDuty (publicación directa)

Para completar este procedimiento, debe tener acceso al servicio de notificaciones y permisos para publicar mensajes. Consulte Protección de notificaciones (políticas de IAM).

    1. En la página de lista Temas, busque el tema con el que desea trabajar. Si necesita ayuda para buscar la página de lista o el tema, consulte Lista de temas.
    2. En el menú Acciones (Menú Acciones) del tema, seleccione Publicar mensaje.
    3. En el cuadro de diálogo Publicar mensaje, proporcione valores para los siguientes campos: introduzca los elementos necesarios para el tipo de integración.
      • En Transformador de eventos personalizados, introduzca un mensaje y un título.

        Mensaje de ejemplo: "Se ha detectado una utilización no óptima. Es posible que una aplicación o un proceso estén consumiendo más CPU de lo normal".

        Título del ejemplo: "Alarma no óptima"

      • Para Oracle Cloud Infrastructure Monitoring, introduzca un mensaje que contenga un blob JSON con pares clave-valor para severity (cadena, necesaria) y uno o más de los siguientes elementos: title (cadena), body (cadena) y alarmMetaData (blob o matriz JSON).

        Ejemplo de blob de JSON:
        {
          "title": "my test alarm",
          "body": "my test body",
          "severity": "warning",
          "alarmMetaData": {
            "key1": "value1",
            "key2": "value2"
          }
        }

        El valor severity es flexible para las pruebas. Para la producción, utilice un valor soportado por PagerDuty, como critical, error, warning o info.

    4. Seleccione Publicar.

      Se dispara un incidente PagerDuty que contiene el contenido del mensaje.

      Ejemplo de incidente PagerDuty disparado (en el momento en que se publicó este documento):

      Ejemplo del incidente PagerDuty disparado.

      Ejemplo del contenido de un incidente PagerDuty disparado (en el momento en que se publicó este documento):

      Ejemplo de contenido en un incidente PagerDuty disparado.

      Ha confirmado que la publicación directa de un mensaje dispara un incidente PagerDuty. A continuación, utilice la nueva suscripción para disparar incidentes PagerDuty desde alarmas, eventos y conectores.

      Nota

      Para comprobar la URL de punto final u otros detalles de la suscripción PagerDuty, consulte Obtención de detalles de una suscripción. Para obtener información de resolución de problemas relacionada con los mensajes publicados, consulte Mensaje no recibido.
  • Utilice el comando oci ons message publish y los parámetros necesarios para publicar un mensaje en un tema:

    oci ons message publish --body <message_text> --topic-id <topic_OCID>

    Para obtener una lista completa de parámetros y valores para los comandos de la CLI, consulte la Command Line Reference for Notifications.

  • Ejecute la operación PublishMessage para publicar un mensaje en un tema.

    Solicitud de ejemplo para un punto final PagerDuty del tipo de transformador de eventos personalizado:

    POST /20181201/topics/<topic_OCID>/messages
    Host: <topic API endpoint>
    <authorization and other headers>
    {
      "title": "Non-Optimal Alarm",
      "body": "Non-optimal utilization detected. An application or process may be consuming more CPU than usual."
    }

Disparar un incidente PagerDuty

Disparar un incidente en PagerDuty desde una alarma, evento, conector o suscripción a anuncios mediante una suscripción en Notifications.

Al crear una alarma, regla de evento, conector o suscripción a anuncios, seleccione el tema Notificaciones que contiene la suscripción PagerDuty. Para obtener instrucciones sobre la creación de estos recursos, consulte la documentación siguiente.

Nota

Para comprobar la URL de punto final u otros detalles de la suscripción PagerDuty, consulte Obtención de detalles de una suscripción.