Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Durch das Hinzufügen einer Scheduler-Jobbenachrichtigungs-Handler-Prozedur können Sie geplante oder automatisierte Jobs überwachen, die in Ihrer autonomen KI-Datenbank ausgeführt werden.
- Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Der Database Scheduler unterstützt die Prozedur für den Jobbenachrichtigungs-Handler, die benutzerdefinierten Code zum Aufrufen von HTTP- oder REST-Endpunkten für ein verbessertes Monitoring von Scheduler-Jobs in einer autonomen AI-Datenbankinstanz verwenden kann. - Prozedur "Jobbenachrichtigungs-Handler erstellen"
Gibt Schritte zum Erstellen eines Jobbenachrichtigungs-Handlers an. - Prozedur für Job-Handler-Benachrichtigungen registrieren
Mit der ProzedurDBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTEkönnen Sie den AttributwertJOB_NOTIFICATION_HANDLERfestlegen, um die Prozedur für die Job-Handler-Benachrichtigung zu registrieren. - Prozedur "Job Handler-Benachrichtigung auslösen"
Sie müssen die ProzedurDBMS_SCHEDULER.ADD_JOB_EMAIL_NOTIFICATIONaufrufen, um die benutzerdefinierte Prozedur für den Jobbenachrichtigungs-Handler auszulösen. - Registrierung der Job Handler-Benachrichtigungsprozedur aufheben
MitDBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTEkönnen Sie die Registrierung der Job Handler-Benachrichtigungsprozedur aufheben.
Übergeordnetes Thema: Entwickeln
Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Der Database Scheduler unterstützt die Prozedur des Jobbenachrichtigungs-Handlers, der benutzerdefinierten Code zum Aufrufen von HTTP- oder REST-Endpunkten verwenden kann, um das Monitoring von Scheduler-Jobs in einer autonomen AI-Datenbankinstanz zu verbessern.
Die Handler-Prozedur erhält alle relevanten Informationen zum Job, wie Name, Klassenname, Ereignistyp und Zeitstempel des Jobverantwortlichen im JSON-Format. Basierend auf den Informationen führt die Handler-Prozedur dann die erforderliche Aktion aus.
Weitere Informationen zu Oracle Scheduler finden Sie unter DBMS_SCHEDULER.
Die Konfiguration des benutzerdefinierten Benachrichtigungs-Handlers für Scheduler-Jobs umfasst folgende Schritte:
-
Erstellen Sie eine Prozedur für den Jobbenachrichtigungs-Handler, wie unter Prozedur "Jobbenachrichtigungs-Handler erstellen" beschrieben.
-
Registrieren Sie die Prozedur des Jobbenachrichtigungs-Handlers für die Datenbank, wie unter Prozedur für Job-Handler-Benachrichtigungen registrieren beschrieben.
-
Trigger für die Prozedur des Jobbenachrichtigungs-Handlers, wie unter Prozedur "Job-Handler-Benachrichtigung auslösen" beschrieben
-
Heben Sie die Registrierung der Jobbenachrichtigungs-Handler-Prozedur für die Datenbank auf, wie unter Prozedur "Job-Handler-Benachrichtigung registrieren" beschrieben.
Übergeordnetes Thema: Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Prozedur "Job Notification Handler erstellen"
Bietet Schritte zum Erstellen eines Jobbenachrichtigungs-Handlers.
Übergeordnetes Thema: Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Job Handler-Benachrichtigungsprozedur registrieren
Verwenden Sie die Prozedur DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE, um den Attributwert JOB_NOTIFICATION_HANDLER festzulegen, um die Benachrichtigungsprozedur des Job Handlers zu registrieren.
Das Attribut JOB_NOTIFICATION_HANDLER gibt die Job Handler-Benachrichtigungsprozedur an, die Sie verwenden möchten.
-
Melden Sie sich als ADMIN-Benutzer an, oder haben Sie die Berechtigung
MANAGE SCHEDULER. -
Sie verfügen über die Berechtigung
EXECUTEfür die Handler-Prozedur oder die SystemberechtigungEXECUTE ANY PROCEDURE.
Das Attribut JOB_NOTIFICATION_HANDLER und das Attribut EMAIL_SERVER schließen sich gegenseitig aus. Der Parameter ATTRIBUTE der Prozedur SET_SCHEDULER_ATTRIBUTE kann entweder den Wert JOB_NOTIFICATION_HANDLER oder den Wert EMAIL_SERVER gleichzeitig enthalten. Sie können entweder E-Mail-Benachrichtigungen konfigurieren oder Ihren Benachrichtigungs-Handler für Ihre Scheduler-Jobs erstellen.
Wenn Sie versuchen, globale Attribute EMAIL_SERVER und JOB_NOTIFICATION_HANDLER festzulegen, wird ein ORA-27488-Fehler ausgelöst.
Führen Sie die Prozedur DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE aus, um die Benachrichtigungsprozedur des Job Handlers zu registrieren:
BEGIN
DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE('job_notification_handler','ADMIN.SEND_NOTIFICATION');
END;
/In diesem Beispiel wird die Prozedur ADMIN.SEND_NOTIFICATION als Job Handler-Benachrichtigungsprozedur für Ihre Datenbank registriert.
Weitere Informationen finden Sie unter Prozedur SET_SCHEDULER_ATTRIBUTE.
Führen Sie diesen Befehl aus, um den Job Notification Handler zu prüfen:
SELECT value FROM dba_scheduler_global_attribute WHERE attribute_name='JOB_NOTIFICATION_HANDLER';
VALUE
---------------
"ADMIN"."SEND_NOTIFICATION"Weitere Informationen finden Sie unter DBA_SCHEDULER_GLOBAL_ATTRIBUTE.
Sie müssen die Berechtigung EXECUTE zuweisen, damit andere Benutzer den Jobbenachrichtigungs-Handler verwenden können. Beispiel:
GRANT EXECUTE ON ADMIN.SEND_NOTIFICATION To DWUSER;Der Fehler ORA-27476 ("\"%s\".\"%s\" does not exist") oder ORA-27486 ("insufficient privileges") wird ausgelöst, wenn Sie keine Berechtigung für die Benachrichtigungsprozedur des Job-Handlers haben.
Übergeordnetes Thema: Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Prozedur für Job Handler-Benachrichtigungen auslösen
Sie müssen die Prozedur DBMS_SCHEDULER.ADD_JOB_EMAIL_NOTIFICATION aufrufen, um die benutzerdefinierte Jobbenachrichtigungs-Handler-Prozedur auszulösen.
DBMS_SCHEDULER.ADD_JOB_EMAIL_NOTIFICATION können Sie die Prozedur des Jobbenachrichtigungs-Handlers auslösen und eine Benachrichtigung senden. Diese Benachrichtigungen werden jedoch nicht in Form einer E-Mail gesendet, wenn Sie die Prozedur für den Jobbenachrichtigungs-Handler registriert haben. Daher sind die Parameter SUBJECT und BODY optional. Der Parameter RECIPIENT ist weiterhin erforderlich. Da diese überladene Prozedur keine E-Mail-Benachrichtigungen sendet, können Sie einen beliebigen Zeichenfolgenwert für den Parameter RECIPIENT angeben.
Übergeordnetes Thema: Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs
Registrierung der Benachrichtigungsprozedur für Job-Handler aufheben
Verwenden Sie DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE, um die Registrierung der Job Handler-Benachrichtigungsprozedur aufzuheben.
MANAGE SCHEDULER verfügen.
Beispiel zum Aufheben der Registrierung der Job Handler-Benachrichtigungsprozedur:
BEGIN
DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE ('job_notification_handler','');
END;
/Übergeordnetes Thema: Benutzerdefinierter Benachrichtigungs-Handler für Scheduler-Jobs