def METHOD_NAME(self, event, state, notification_uuid: Optional[str] = None):
    integration = self.get_integration()
    if not integration:
        logger.exception("Integration removed, however, the rule still refers to it.")
        # integration removed but rule still exists
        return
    service = self._get_service()
    if not service:
        logger.exception("The PagerDuty does not exist anymore while integration does.")
        return
    def send_notification(event, futures):
        org_integration = self.get_organization_integration()
        org_integration_id = None
        if org_integration:
            org_integration_id = org_integration.id
        else:
            org_integration_id = infer_org_integration(
                integration_id=service["integration_id"], ctx_logger=logger
            )
        client = PagerDutyProxyClient(
            org_integration_id=org_integration_id,
            integration_key=service["integration_key"],
        )
        try:
            resp = client.send_trigger(event)
        except ApiError as e:
            self.logger.info(
                "rule.fail.pagerduty_trigger",
                extra={
                    "error": str(e),
                    "service_name": service["service_name"],
                    "service_id": service["id"],
                    "project_id": event.project_id,
                    "event_id": event.event_id,
                },
            )
            raise e
        # TODO(meredith): Maybe have a generic success log statements for
        # first-party integrations similar to plugin `notification.dispatched`
        self.logger.info(
            "rule.success.pagerduty_trigger",
            extra={
                "status_code": resp.status_code,
                "project_id": event.project_id,
                "event_id": event.event_id,
                "service_name": service["service_name"],
                "service_id": service["id"],
            },
        )
    key = f"pagerduty:{integration.id}:{service['id']}"
    yield self.future(send_notification, key=key)