blob: 77eabad62ae8711f2d241a2d1f33660d03e0ff0f [file] [log] [blame]
:mod:`airflow.contrib.operators.opsgenie_alert_operator`
========================================================
.. py:module:: airflow.contrib.operators.opsgenie_alert_operator
Module Contents
---------------
.. py:class:: OpsgenieAlertOperator(message, opsgenie_conn_id='opsgenie_default', alias=None, description=None, responders=None, visibleTo=None, actions=None, tags=None, details=None, entity=None, source=None, priority=None, user=None, note=None, *args, **kwargs)
Bases: :class:`airflow.models.BaseOperator`
This operator allows you to post alerts to Opsgenie.
Accepts a connection that has an Opsgenie API key as the connection's password.
This operator sets the domain to conn_id.host, and if not set will default
to ``https://api.opsgenie.com``.
Each Opsgenie API key can be pre-configured to a team integration.
You can override these defaults in this operator.
:param opsgenie_conn_id: The name of the Opsgenie connection to use
:type opsgenie_conn_id: str
:param message: The Message of the Opsgenie alert (templated)
:type message: str
:param alias: Client-defined identifier of the alert (templated)
:type alias: str
:param description: Description field of the alert (templated)
:type description: str
:param responders: Teams, users, escalations and schedules that
the alert will be routed to send notifications.
:type responders: list[dict]
:param visibleTo: Teams and users that the alert will become visible
to without sending any notification.
:type visibleTo: list[dict]
:param actions: Custom actions that will be available for the alert.
:type actions: list[str]
:param tags: Tags of the alert.
:type tags: list[str]
:param details: Map of key-value pairs to use as custom properties of the alert.
:type details: dict
:param entity: Entity field of the alert that is
generally used to specify which domain alert is related to. (templated)
:type entity: str
:param source: Source field of the alert. Default value is
IP address of the incoming request.
:type source: str
:param priority: Priority level of the alert. Default value is P3. (templated)
:type priority: str
:param user: Display name of the request owner.
:type user: str
:param note: Additional note that will be added while creating the alert. (templated)
:type note: str
.. attribute:: template_fields
:annotation: = ['message', 'alias', 'description', 'entity', 'priority', 'note']
.. method:: _build_opsgenie_payload(self)
Construct the Opsgenie JSON payload. All relevant parameters are combined here
to a valid Opsgenie JSON payload.
:return: Opsgenie payload (dict) to send
.. method:: execute(self, context)
Call the OpsgenieAlertHook to post message