Performance mit Autonomous Database-Metriken überwachen

Sie können Zustand, Kapazität und Performance Ihrer Datenbanken mit Metriken, Alarmen und Benachrichtigungen überwachen. Sie können Metriken über die Oracle Cloud Infrastructure-Konsole oder über Monitoring-APIs anzeigen.

Metriken für eine Autonomous Database-Instanz anzeigen

Zeigt die Schritte zum Anzeigen der Autonomous Database-Metriken an.

Um Metriken anzuzeigen, müssen Sie den erforderlichen Zugriff, wie in einer Oracle Cloud Infrastructure-Policy angegeben, haben (unabhängig davon, dass Sie die Konsole, die REST-API oder ein anderes Tool verwendet). Informationen zu Policys finden Sie unter Erste Schritte mit Policys.

Führen Sie gegebenenfalls die folgenden erforderlichen Schritte aus:

  • Öffnen Sie die Oracle Cloud Infrastructure-Konsole, indem Sie neben "Oracle Cloud" auf Navigationssymbol klicken.

  • Klicken Sie im linken Navigationsmenü von Oracle Cloud Infrastructure auf Oracle Database, und klicken Sie je nach Workload auf eine von: Autonomous Data Warehouse, autonome JSON-Datenbank oder Autonomous Transaction Processing.
  • Wählen Sie auf der Seite "Autonome Datenbanken" unter den Links in der Spalte Anzeigename eine Autonomous Database aus.

So zeigen Sie Metriken für eine Autonomous Database-Instanz an:

  1. Klicken Sie auf der Seite "Details" unter Ressourcen auf Metriken.
  2. Für jede Metrik gibt es ein Diagramm. In jedem Diagramm können Sie Intervall und Statistik auswählen oder die Standardwerte verwenden.
Hinweis

In der folgenden Tabelle werden die Standardmetriken angezeigt, die in der Oracle Cloud Infrastructure-Konsole angezeigt werden.

Eine Liste aller Datenbankmetriken und -dimensionen finden Sie unter Verfügbare Metriken: oci_autonomous_database.

Metrikname Beschreibung

CPU-Auslastung

CPU-Auslastung in Prozent, über alle Consumer-Gruppen hinweg aggregiert. Der Auslastungsprozentsatz wird in Bezug auf die Anzahl der CPUs angegeben, die von der Datenbank verwendet werden dürfen. Dies ist die Anzahl der ECPUs.

Wenn Ihre Datenbank OCPUs verwendet, ist die Anzahl der zulässigen CPUs doppelt so hoch wie die Anzahl der OCPUs.

Speicherplatzauslastung

Der Prozentsatz der bereitgestellten Speicherkapazität, die derzeit genutzt wird. Stellt den gesamten zugewiesenen Speicherplatz für alle Tablespaces dar.

Sessions

Die Anzahl der Sessions in der Datenbank.

Ausführungsanzahl

Die Anzahl der Benutzeraufrufe und rekursiven Aufrufe, die während des ausgewählten Intervalls SQL-Anweisungen ausgeführt haben.

Aktive Anweisungen

Die Anzahl der aktiven SQL-Anweisungen während des ausgewählten Intervalls, über alle Consumer-Gruppen hinweg aggregiert.

In Queue gestellte Anweisungen

Die Anzahl der in Queue gestellten SQL-Anweisungen während des ausgewählten Intervalls, über alle Consumer-Gruppen hinweg aggregiert.

Datenbankverfügbarkeit

Die Datenbank ist im ausgewählten Zeitintervall für Verbindungen verfügbar (Daten für diese Metrik sind um 5 Minuten verzögert). Mögliche Werte für diese Metrik:

  • 1 = Datenbank ist verfügbar
  • 0 = Datenbank ist nicht verfügbar

Sie können einen Alarm festlegen, der ausgelöst wird, wenn die Datenbank nicht verfügbar ist (Wert 0).

Hinweis

Die Verfügbarkeit wird basierend auf dem Prozentsatz der monatlichen Betriebszeit berechnet, der in den Dokumenten Oracle PaaS and IaaS Public Cloud Services Pillar Document unter Delivery Policys beschrieben ist (siehe Autonomous Database Availability Service Level Agreement).

Nicht erfolgreiche Verbindungen

Zeigt die Gesamtanzahl an nicht erfolgreichen Verbindungen mit der Datenbank während des ausgewählten Intervalls an.

Eine Verbindung wird als nicht erfolgreich gezählt, wenn ein Verbindungsversuch die Datenbank erreicht und einen der folgenden Fehler protokolliert: ORA-12514, ORA-12519 oder ORA-12529.

Um einen Alarm für eine Metrik zu erstellen, klicken Sie in einem Metrikdiagramm oder einer Tabelle auf Optionen, und wählen Sie Alarm für diese Abfrage erstellen. Informationen zum Einrichten und Verwenden von Alarmen finden Sie unter Alarme verwalten.

Weitere Informationen zu Metriken finden Sie unter Verfügbare Metriken: oci_autonomous_database.

Sie können Metriken auch mit der Monitoring-API anzeigen. Weitere Informationen finden Sie unter Monitoring-API.

Logs und Audit Trails anzeigen

Zeigt die Schritte zum Anzeigen der Autonomous Database-Logs und Audittrails an.

Hinweis

Um Logs und Audittests anzuzeigen, benötigen Sie den erforderlichen Zugriff, der in einer Oracle Cloud Infrastructure-Policy angegeben ist (Verwendung der Konsole, der REST-API oder eines anderen Tools). Informationen zu Policys finden Sie unter Erste Schritte mit Policys.

So zeigen Sie Audittrails und Logs für eine Autonomous Database-Instanz an:

  1. Klicken Sie auf der Seite "Details" unter Ressourcen auf Metriken.
  2. Klicken Sie im Bereich "Metriken" auf Audit und Logs anzeigen.
  3. Klicken Sie im Bereich "Logging" auf Logs, um Loginformationen anzuzeigen.
  4. Klicken Sie im Loggingbereich auf Audit, um Auditinformationen anzuzeigen.

Weitere Informationen finden Sie unter Autonomous Database auditieren und Auditlogs.

Metriken für autonome Datenbanken in einem Compartment anzeigen

Zeigt die Schritte zum Anzeigen von Metriken für autonome Datenbanken in einem Compartment an.

Um Metriken anzuzeigen, benötigen Sie den erforderlichen Zugriff, der in einer Oracle Cloud Infrastructure-Policy angegeben ist (Verwendung der Konsole, der REST-API oder eines anderen Tools). Informationen zu Policys finden Sie unter Erste Schritte mit Policys.

  • Öffnen Sie die Oracle Cloud Infrastructure-Konsole, indem Sie neben "Oracle Cloud" auf Navigationssymbol klicken.

  • Klicken Sie in der linken Navigationsliste auf Beobachtbarkeit and Management. Klicken Sie unter Monitoring auf Servicemetriken.

So zeigen Sie mit dem Metrikservice Autonomous Database-Metriken an:

  1. Wählen Sie auf der Seite Servicemetriken unter Compartment das Compartment aus.
  2. Wählen Sie auf der Seite Servicemetriken unter Metrik-Namespace die Option oci_autonomous_database aus.
  3. Wenn sich mehrere autonome Datenbanken im Compartment befinden, können Sie Metriken anzeigen, die über die autonomen Datenbanken hinweg aggregiert werden. Wählen Sie dazu Metrikstreams aggregieren.
  4. Wenn Sie die angezeigten Metriken einschränken möchten, klicken Sie neben Dimensionen auf Hinzufügen (klicken Sie auf Bearbeiten, wenn Sie bereits Dimensionen hinzugefügt haben).
    1. Wählen Sie im Feld Dimensionsname eine Dimension aus.
    2. Wählen Sie im Feld Dimensionswert einen Wert aus.
    3. Klicken Sie auf Fertig.

    Klicken Sie im Dialogfeld Dimensionen bearbeiten auf +Weitere Dimension, um eine zusätzliche Dimension hinzuzufügen. Klicken Sie auf x, um eine Dimension zu entfernen.

Um einen Alarm für eine bestimmte Metrik zu erstellen, klicken Sie auf Optionen, und wählen Sie Alarm für diese Abfrage erstellen. Informationen zum Einrichten und Verwenden von Alarmen finden Sie unter Alarme verwalten.

Metriken und Dimensionen für autonome Datenbanken

Sie können die Instanzen begrenzen, in denen Metriken mit Dimensionen angezeigt werden. Die verfügbaren Dimensionen umfassen: Workload-Typ, Instanzanzeigename, Region und Instanz-OCID.

Verwenden Sie Dimensionen, indem Sie Werte auf der Seite "Metriken" der Oracle Cloud Infrastructure-Konsole auswählen oder Dimensionswerte mit der API festlegen. Siehe Metriken für autonome Datenbanken in einem Compartment anzeigen, um Metriken anzuzeigen und Metrikdimensionen auszuwählen.

Benutzerdefinierte Metriken in Autonomous Database verwenden

Beschreibt, wie Sie benutzerdefinierte Metriken in Autonomous Database erstellen und veröffentlichen.

Autonomous Database bietet viele datenbankbezogene Metriken, die über den OCI Monitoring-Service verfügbar sind. Darüber hinaus können Sie benutzerdefinierte Metriken erstellen, um eigene Metriken zu erfassen, zu veröffentlichen und zu analysieren. Eine benutzerdefinierte Metrik erfasst angegebene Daten aus Ihrer Autonomous Database-Instanz und veröffentlicht die Daten mit einer vom OCI-SDK bereitgestellten REST-API im OCI Monitoring-Service.

Voraussetzungen

  1. Rufen Sie Oracle Cloud Infrastructure-Zugriff über Oracle Cloud Free Tier oder einen kostenpflichtigen Cloud-Account ab.

    Weitere Informationen finden Sie unter Oracle Cloud-Account abrufen.

  2. Erstellen Sie eine Autonomous Database-Instanz, oder haben Sie Zugriff auf eine vorhandene Autonomous Database-Instanz.

    Weitere Informationen finden Sie unter Autonomous Database-Instanz bereitstellen.

  3. Rufen Sie ADMIN-Zugangsdaten für die Autonomous Database-Instanz ab.

  4. Melden Sie sich mit Database Actions oder einem der Oracle Database-Clients wie SQL Developer oder SQL*Plus bei der Datenbank an.

    Weitere Informationen finden Sie unter Verbindung zu Autonomous Database herstellen.

  5. Sie benötigen Zugriff auf den OCI Monitoring-Service und OCI Identity and Access Management.

    Weitere Informationen finden Sie unter Benutzerdefinierte Metriken mit der API veröffentlichen.

Überblick über benutzerdefinierte Metriken mit OCI Monitoring Service

Die folgende Abbildung zeigt die Schritte zum Erstellen und Veröffentlichen benutzerdefinierter Metriken in Autonomous Database. Dies zeigt, dass Sie Metrikdaten mit einem Skript erfassen, das auf Ihrer Autonomous Database-Instanz ausgeführt wird, und Sie diese Daten im OCI Monitoring-Service veröffentlichen und wie Sie Alarme und Benachrichtigungen für Metrikwerte erstellen können.



  • PL/SQL-Skript erstellen und auf der Autonomous Database-Instanz bereitstellen. Dieses Skript wird regelmäßig ausgeführt, um benutzerdefinierte Metriken zu berechnen, zu erfassen und im OCI Monitoring-Service zu veröffentlichen.

  • Die Autonomous Database-Instanz kann sich auf einem öffentlichen oder privaten Endpunkt befinden. Die Kommunikation zwischen der Autonomous Database-Instanz und dem OCI Monitoring-Service findet im Oracle Cloud-Netzwerk statt. Das bedeutet, dass Sie zum Veröffentlichen von Metriken im OCI Monitoring-Service kein Servicegateway erstellen müssen.

Benutzerdefinierte Metriken erstellen und veröffentlichen

So erstellen und veröffentlichen Sie benutzerdefinierte Metriken:

  1. Erstellen Sie in OCI Identity and Access Management eine dynamische Gruppe für Ihre Autonomous Database-Instanz, und erstellen Sie eine Policy, um die dynamische Gruppe zu autorisieren, Metriken an den OCI Monitoring-Service zu posten.

    Beispiele:

    1. Klicken Sie in der Oracle Cloud Infrastructure-Konsole auf Identität und Sicherheit.
    2. Klicken Sie unter Identität auf Domains, und wählen Sie eine Identitätsdomain aus (oder erstellen Sie eine neue Identitätsdomain).
    3. Klicken Sie unter Identitätsdomain auf Dynamische Gruppen.
    4. Klicken Sie auf Dynamische Gruppe erstellen, und geben Sie einen Namen, eine Beschreibung und eine Regel ein.

      Beispiel: Erstellen Sie eine dynamische Gruppe namens adb_dg für die Autonomous Database-Instanz, und erstellen Sie eine Regel:

      ALL {resource.type = 'autonomousdatabase', resource.compartment.id = 'OCID_of_compartment'}

      Alternativ können Sie eine einzelne Autonomous Database-Instanz anstelle aller Instanzen im Compartment auswählen:

      ALL {resource.type = 'autonomousdatabase', resource.id = 'OCID_of_autonomousdatabase_instance'}


    5. Klicken Sie auf Erstellen.
    6. Erstellen Sie eine OCI Identity and Access Management-(IAM-)Policy, um die dynamische Gruppe zu autorisieren.

      Beispiel: Erstellen Sie eine Policy, um die dynamische Gruppe adb_dg zu autorisieren, Metriken mit der Policy adb_dg_policy an den OCI Monitoring-Service zu posten:

      Allow dynamic-group adb_dg to use metrics in compartment OCID_of_compartment


    Nachdem Sie die Policy definiert haben, ist die dynamische Gruppe mit der Definition adb_dg autorisiert, Metriken im Compartment zu posten.

    Zu diesem Zeitpunkt kann die PL/SQL-Routine, die in Autonomous Database ausgeführt wird, keine Metriken an den OCI Monitoring-Service posten, da keine Autonomous Database-Benutzer berechtigt sind, Metriken im OCI Monitoring-Service zu veröffentlichen. Sie stellen diese Funktion bereit, wenn Sie den Resource Principal im folgenden Schritt aktivieren (Schritt 2c).

  2. Erstellen Sie einen neuen Datenbankbenutzer oder ein neues Datenbankschema mit den erforderlichen Berechtigungen in Ihrer Autonomous Database-Instanz, oder aktualisieren Sie einen vorhandenen Datenbankbenutzer oder ein vorhandenes Datenbankschema mit den erforderlichen Berechtigungen.

    Beispiele:

    1. Erstellen Sie einen Datenbankbenutzer, oder verwenden Sie einen vorhandenen Benutzer, um Metriken zu veröffentlichen.

      Beispiel: Erstellen Sie einen neuen Benutzer ECOMMERCE_USER in der Autonomous Database-Instanz:

      CREATE USER ECOMMERCE_USER IDENTIFIED BY "password";

      Jetzt haben Sie den neuen Benutzer ECOMMERCE_USER. Die folgenden Schritte sind mit diesem Benutzer oder mit dem angegebenen Benutzer identisch. Wenn Sie jedoch einen Benutzer mit einem anderen Namen erstellen, müssen Sie ECOMMERCE_USER durch den alternativen Benutzernamen ersetzen.

    2. Erteilen Sie dem Benutzer die erforderlichen Oracle Database-Berechtigungen.
      GRANT CREATE TABLE, ALTER ANY INDEX, CREATE PROCEDURE, 
             CREATE JOB, SELECT ANY TABLE, EXECUTE ANY PROCEDURE, UPDATE ANY TABLE, 
             CREATE SESSION, UNLIMITED TABLESPACE, CONNECT, RESOURCE 
             TO ECOMMERCE_USER;
      GRANT  SELECT ON "SYS"."V_$PDBS" TO ECOMMERCE_USER;
      GRANT  EXECUTE ON "C##CLOUD$SERVICE"."DBMS_CLOUD" to ECOMMERCE_USER;
      GRANT  SELECT ON SYS.DBA_JOBS_RUNNING TO ECOMMERCE_USER;
    3. Aktivieren Sie Oracle Database-Zugangsdaten für den Oracle Cloud-Resource Principal, und erteilen Sie dem Benutzer Zugriff.

      Dieser Schritt verbindet die in Schritt 1 erstellte dynamische Gruppe adb_dg mit dem Datenbankbenutzer ECOMMERCE_USER und erteilt dem Benutzer die Berechtigung, Metriken an den OCI Monitoring-Service zu posten.

      Beispiele:

      EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => 'ECOMMERCE_USER');

      Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen verwenden.

      Alternativ zur Resource Principal-Authentifizierung können Sie OCI Native-Zugangsdaten zur Authentifizierung verwenden. Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.

    4. (Optional) Prüfen Sie die im vorherigen Schritt abgeschlossenen Vorgänge.

      Beispiele:

      SELECT OWNER, CREDENTIAL_NAME FROM DBA_CREDENTIALS WHERE CREDENTIAL_NAME = 'OCI$RESOURCE_PRINCIPAL'  AND OWNER =  'ADMIN';

      Um zu prüfen, ob ein anderer Benutzer als ADMIN Zugriff auf OCI Resource Principal hat. Beispiel: Um zu prüfen, ob ECOMMERCE_USER Zugriff auf die Datenbankzugangsdaten hat, verwenden Sie die View DBA_TAB_PRIVS:

      SELECT * FROM DBA_TAB_PRIVS WHERE DBA_TAB_PRIVS.GRANTEE='ECOMMERCE_USER';
  3. Erstellen Sie ein PL/SQL-Skript, das Metrikdaten veröffentlicht und die Ausführung des Skripts auf der Autonomous Database-Instanz terminiert.
    1. Beispiel: Erstellen Sie ein PL/SQL-Skript mit einer Metrik, mit der die Zeilen der Star Schema Benchmark-Beispieldaten gezählt und im OCI Monitoring-Service veröffentlicht werden.
      CREATE OR REPLACE PROCEDURE publish_lineorder_metric (p_sql_statement IN VARCHAR2)
      IS
      l_result NUMBER;
      l_compartment_ocid VARCHAR2(255);
      l_db_name VARCHAR2(255);
      l_region VARCHAR2(255);
      l_json_payload CLOB;
      l_cloud_identity CLOB;
      BEGIN
      
      -- 1. Execute the SQL statement and get the result
      EXECUTE IMMEDIATE p_sql_statement INTO l_result;
       
       -- 2. Get compartment OCID, DB name, and region from cloud identity
       SELECT cloud_identity INTO l_cloud_identity FROM v$pdbs;
        
       l_compartment_ocid := JSON_VALUE(l_cloud_identity, '$.COMPARTMENT_OCID');
       l_db_name := JSON_VALUE(l_cloud_identity, '$.DATABASE_NAME');
       l_region := JSON_VALUE(l_cloud_identity, '$.REGION');
       
      DBMS_OUTPUT.PUT_LINE(l_cloud_identity);
       
       -- 3. Construct the JSON payload for the metric
      
       l_json_payload :=
       '{' ||
       ' "metricData": [' ||
       ' {' ||
       ' "namespace": "custom_metrics",' ||
       ' "compartmentId": "' || l_compartment_ocid || '",' ||
       ' "name": "lineorder_metric",' ||
       ' "dimensions": {' ||
       ' "dbName": "' || l_db_name || '"' ||
       ' },' ||
       ' "datapoints": [' ||
       ' {' ||
       ' "timestamp": "' || TO_CHAR(SYSTIMESTAMP AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.FF3"Z"') || '",' ||
       ' "value": ' || l_result ||
       ' }' ||
       ' ]' ||
       ' }' ||
       ' ]' ||
       '}';
       
       -- 4. Publish the metric using DBMS_CLOUD.SEND_REQUEST
      
       DECLARE
       l_response DBMS_CLOUD_TYPES.resp;
       BEGIN
       l_response := DBMS_CLOUD.SEND_REQUEST(
       credential_name => 'OCI$RESOURCE_PRINCIPAL',
       uri => 'https://telemetry-ingestion.' || l_region || '.oraclecloud.com/20180401/metrics',
       method => 'POST',
       body => UTL_RAW.CAST_TO_RAW(l_json_payload)
       );
       
       –- 5. Check response status
      
       IF DBMS_CLOUD.GET_RESPONSE_STATUS_CODE(l_response) = 200 THEN
       DBMS_OUTPUT.PUT_LINE('Metric published successfully!');
       ELSE
       DBMS_OUTPUT.PUT_LINE('Error publishing metric: ' || DBMS_CLOUD.GET_RESPONSE_STATUS_CODE(l_response));
       DBMS_OUTPUT.PUT_LINE(DBMS_CLOUD.GET_RESPONSE_TEXT(l_response));
       END IF;
       
       EXCEPTION
       WHEN OTHERS THEN
       DBMS_OUTPUT.PUT_LINE('Error during SEND_REQUEST: ' || SQLERRM);
       END;
      EXCEPTION
       WHEN OTHERS THEN
       DBMS_OUTPUT.PUT_LINE('Error: ' || SQLERRM);
      END;
      /

      Weitere Informationen finden Sie in PostMetricData.

    2. Planen Sie einen Job, um den benutzerdefinierten Metrikdatenpunkt einmal pro Minute aufzurufen und zu veröffentlichen. In der Produktion wird der Zeitplan entsprechend Ihren Anforderungen konfiguriert.
      BEGIN
         DBMS_SCHEDULER.CREATE_JOB (
            job_name => 'publish_lineorder_count_job',
            job_type => 'STORED_PROCEDURE',
            job_action => 'ECOMMERCE_USER.publish_lineorder_metric',
            number_of_arguments => 1,
            start_date => SYSTIMESTAMP,
            repeat_interval => 'FREQ=MINUTELY;INTERVAL=1',
            enabled => FALSE,
            AUTO_DROP => FALSE,
            comments => 'Publishes the count of rows in SSB.LINEORDER every 1 minute'
      );
       
        DBMS_SCHEDULER.SET_JOB_ARGUMENT_VALUE (
             job_name => 'publish_lineorder_count_job',
             argument_position => 1,
             argument_value => 'SELECT COUNT(*) FROM SSB.LINEORDER'
       );
       
         DBMS_SCHEDULER.ENABLE('ECOMMERCE_USER.PUBLISH_LINEORDER_COUNT_JOB');
      END;
  4. Sehen Sie sich die veröffentlichten benutzerdefinierten Metriken im Metrik-Explorer an.
    1. Klicken Sie im Navigationsmenü der Oracle Cloud Infrastructure-Konsole auf Beobachtbarkeit und Management.
    2. Klicken Sie unter Beobachtbarkeit und Management auf Metrik-Explorer.
    3. Wählen Sie im Metrik-Explorer den Namespace custom_metrics_from_adb, resourceGroup als ecommerece_adb und den Metriknamen lineorder_metric (den Namen der Metrik, die Sie im PL/SQL-Skript erstellt haben).

      Alle Metadaten und Dimensionen, die Sie für benutzerdefinierte Metriken festlegen, sind verfügbar. Sie können Metrics Query Language-(MQL-)Abfragen erstellen, um diese Metriken entsprechend Ihren Anforderungen und Ihrem Anwendungsfall zu analysieren. Sie können auch Oracle Cloud-Alarme im Metrikstream einrichten, um Ihr Betriebsteam zu warnen. Dadurch wird die Beobachtbarkeitsschleife für die Autonomous Database-Metriken Ihrer Wahl automatisiert. Beachten Sie, dass im Metrik-Explorer im Metrikbildschirm standardmäßig die Diagrammansicht angezeigt wird und Sie die Option zum Aktivieren der Listenansicht zum Hervorheben von Datenpunkten haben.

Nachdem Sie benutzerdefinierte Metriken erstellt haben, können Sie die Metriken wie alle vordefinierten Metriken im OCI Monitoring-Service verwenden. Das bedeutet, dass Sie benutzerdefinierte Metriken mit der Metrics Query Language (MQL) analysieren und Alarme und Benachrichtigungen einrichten können, um Sie zu benachrichtigen, wenn ein interessantes Ereignis eintritt.

In den folgenden Themen finden Sie weitere Informationen: