Überwachung der Oracle Multitenant-Datenbank (öffentliche Vorschau)

Nach der Installation des Instana-Host-Agenten wird der Oracle Multitenant-Datenbanksensor automatisch installiert, aber Sie müssen den Sensor wie im Abschnitt Konfigurieren beschrieben konfigurieren. Nachdem Sie den Sensor konfiguriert haben, können Sie sowohl die Container-Datenbank (CDB) als auch mehrere steckbare Datenbanken (PDBs) überwachen und deren Metriken in der Instana-Benutzeroberfläche anzeigen.

Hinweis: Um die Oracle Multitenant-Datenbank in einem Kubernetes - oder Red Hat OpenShift -Cluster zu überwachen, installieren Sie den Instana-Host-Agenten nicht auf jedem Knoten des Clusters. Installieren Sie die Host-Agenten auf speziellen Host-Rechnern.

Unterstützte Informationen

Unterstützte Versionen

Instana unterstützt die folgenden Oracle Datenbankversionen für Metriken und Konfigurationsdaten:

  • Oracle Database 18c (18.1.0 // 12.2.0.2)
  • Oracle Database 19c (19.1.0 // 12.2.0.3)
  • Oracle Database 21c (21.1.0)
  • Oracle Database 23ai (23.4.0)

Unterstützte Zeichensätze

Der Oracle Multitenant-Datenbanksensor unterstützt alle Zeichensätze, die von Oracle unterstützt werden, um Metriken aus der Datenbank Oracle abzurufen. Weitere Informationen zu den Zeichensätzen, die die Datenbank Oracle unterstützt, finden Sie unter Zeichensätze.

Erkennung

Verwenden Sie die Option Remote-Konfiguration, um den Instana-Agenten anzuweisen, die Oracle Multitenant-Datenbanken (CDB und PDBs) zu ermitteln und zu überwachen, die auf demselben Host oder auf anderen Hosts ausgeführt werden, auf denen der Agent aus irgendeinem Grund nicht installiert werden kann.

konfigurieren

Erforderliche Datenbankberechtigungen

Um den Sensor mit Oracle zu verbinden und die Metriken und Konfigurationsdaten zu überwachen, benötigen Sie die Berechtigung read für die folgenden Tabellen:

#Create a role
create ROLE INSTANAROLE;

#Grant privileges to this role for following tables and viewes

V_$SESSION, V_$BGPROCESS, V_$ACTIVE_SESSION_HISTORY, V_$SYSSTAT, V_$SGASTAT, V_$LIBRARYCACHE,
V_$LATCH, V_$ROWCACHE, V_$STATNAME, V_$SESSTAT, V_$PROCESS, V_$SQLAREA,
V_$PARAMETER, V_$SQL, V_$VERSION, V_$RESOURCE_LIMIT, V_$SYS_TIME_MODEL, V_$SYSTEM_WAIT_CLASS, V_$INSTANCE,
V_$LOCK, DBA_HIST_SQLTEXT, DBA_HIST_SQLSTAT, DBA_HIST_SNAPSHOT, DBA_HIST_ACTIVE_SESS_HISTORY,
DBA_USERS, DBA_OBJECTS, DBA_TABLESPACE_USAGE_METRICS, DBA_DATA_FILES, DBA_TEMP_FILES, V_$LOG, DBA_FREE_SPACE

eg. GRANT SELECT ON V_$SESSION to INSTANAROLE;

#Assign this role to a user. Same user needs to be configured in the configuration yaml (see sensor configuration section).
GRANT INSTANAROLE to <user>;

#The following tables/views require the Oracle Diagnostic Pack license.
V$ACTIVE_SESSION_HISTORY, DBA_HIST_SNAPSHOT, DBA_HIST_SQLSTAT, DBA_HIST_SQLTEXT, DBA_HIST_ACTIVE_SESS_HISTORY
 

Sensor konfigurieren

Instana unterstützt die Fernüberwachung für die Oracle Multitenant-Datenbank.

Um die Oracle Multitenant-Datenbank zu überwachen, müssen Sie die Anmeldeinformationen über die Konfigurationsdatei des Agenten *instanaAgentDir*/etc/instana/configuration.yaml bereitstellen.

Fernüberwachung

Um die Fernüberwachung der Oracle Multitenant-Datenbank zu konfigurieren, siehe die folgenden Konfigurationen:

com.instana.plugin.oracledb:
  remote: # we support listing multiple DBs here, both CDB's and PDB's!
    - host: '<ORCL_HOST_1>'
      port: '<ORCL_PORT>'
      user: '<ORCL_USER>' # default is 'sys as sysdba'
      password: '<ORCL_PASSWORD>'
      databaseSID: '<ORCL_DB_SID>' # either databaseSID or databaseServiceName is allowed
      databaseServiceName: '<ORCL_DB_SERVICE_NAME>'
      availabilityZone: 'Remote Monitoring'
      poll_rate: 20
    - host: '<ORCL_HOST_2>'
      port: '<ORCL_PORT>'
      user: '<ORCL_USER>' # default is 'sys as sysdba'
      password: '<ORCL_PASSWORD>'
      databaseSID: '<INSERT_DB_SID>' # either databaseSID or databaseServiceName is allowed
      databaseServiceName: '<ORCL_DB_SERVICE_NAME>'
      availabilityZone: 'Remote Monitoring'
      poll_rate: 5
 

Die Abfragerate legt fest, wie oft der Sensor die Metriken der Oracle Multitenant-Datenbank abfragt (in Sekunden). Der Standardwert ist 1 Sekunde.

Hinweis: Auf der Infrastrukturkarte erscheint die entfernte Instanz OracleDB als separates Feld mit dem Namen, der im Schlüssel availabilityZone in der Datei configuration.yaml angegeben ist. Um die Instanz zu finden, geben Sie entity.type:oracleDB in die Suchleiste von Instana Dynamic Focus ein.

Benutzerdefinierte Abfrage

In der folgenden Tabelle sind die Metriken aufgeführt, für die Sie maximal drei benutzerdefinierte Abfrageraten ungleich Null konfigurieren können. Standardmäßig sind Metriken mit einer Poll-Rate von Null oder weniger als Null deaktiviert. Um eine beliebige Metrik zu deaktivieren, entfernen Sie den entsprechenden Metrikeintrag aus der Konfigurationsdatei *instanaAgentDir*/etc/instana/configuration.yaml .

Name Beschreibung
TOP_VERSTRICHENE_ZEIT_ABFRAGEN Liste der wichtigsten Abfragen zur verstrichenen Zeit.
SQL_ID_VERBRAUCHT_MEHR_CPU Liste der SQLs, die mehr CPU verbrauchen.
USER_FOREGROUND_SESSIONS Zeigt aktive Sitzungen im Vordergrund an.
TOP_10_SQL_HIGH_IO_LAST_1_HR Liste der Top-SQL mit hohem E/A in der letzten 1 Stunde. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten.
TOP_TEN_CPU_CONSUMING_SESSION Liste der Sitzungen mit dem höchsten CPU-Verbrauch.
TOP_CPU_CONSUMING_SESSION_LAST_10_MIN Liste der Sitzungen mit dem höchsten CPU-Verbrauch in den letzten 10 Minuten. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten.
AKTUELLE_BLOCKIERENDE_SITZUNGEN Ermöglicht die Anzeige von Informationen über die blockierten Sitzungen.
BIBLIOTHEK_CACHE_HIT_RATIO Das Verhältnis gibt die Anzahl der Pin-Anfragen an, die zu Pin-Treffern führen.
ACTIVE_SESSIONS_RUNNING_MORE_THAN_600_SECS Alle aktiven Sitzungen, die seit mehr als 10 Minuten in der Datenbank Oracle laufen.
ACTIVE_SESSION_HISTORY Stichprobenartige Sitzungsaktivität in der Datenbank. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten.
TOP_10_SQL_HIGH_IO_LAST_24_HR Liste der Top-SQL mit hohem E/A in den letzten 24 Stunden. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten.
TOP_CPU_QUERIES_LAST_24_HRS Liste der Abfragen mit der höchsten CPU-Belastung in den letzten 24 Stunden. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten.
ABFRAGEN_NICHT_VERWENDEND_BINDENDE_VARIABLEN Liste der Abfragen, die die Bindungsvariable im Code nicht verwenden.
Fernüberwachung

Siehe die folgende Konfiguration für die Fernüberwachung für benutzerdefinierte Abrufe:

com.instana.plugin.oracledb:
  remote: # we support listing multiple DBs here, both CDB's and PDB's!
    - host: '<ORCL_HOST_1>'
      port: '<ORCL_PORT>'
      user: '<ORCL_USER>' # default is 'sys as sysdba'
      password: '<ORCL_PASSWORD>'
      databaseSID: '<ORCL_DB_SID>' # either databaseSID or databaseServiceName is allowed
      databaseServiceName: '<ORCL_DB_SERVICE_NAME>'
      availabilityZone: 'Remote Monitoring'
      poll_rate: 20
      customPolling: # Restricted to maximum 3 nonzero poll rates
        - poll_rate: 30 # in seconds
          metrics:
            - TOP_CPU_CONSUMING_SESSION_LAST_10_MIN
            - ACTIVE_SESSIONS_RUNNING_MORE_THAN_600_SECS
            - LIBRARY_CACHE_HIT_RATIO
            - CURRENT_BLOCKING_SESSIONS
        - poll_rate: 60 # in seconds
          metrics:
            - TOP_ELAPSED_TIME_QUERIES
            - TOP_TEN_CPU_CONSUMING_SESSION
            - SQL_ID_CONSUMING_MORE_CPU
            - USER_FOREGROUND_SESSIONS
            - TOP_10_SQL_HIGH_IO_LAST_1_HR
            - ACTIVE_SESSION_HISTORY
        - poll_rate: 3600 # in seconds
          metrics:
            - TOP_10_SQL_HIGH_IO_LAST_24_HR
            - TOP_CPU_QUERIES_LAST_24_HRS
            - QUERIES_NOT_USING_BINDING_VARIABLES
 

Metriken anzeigen

Führen Sie die folgenden Schritte aus, um die Metriken für die Datenbank Oracle Multitenant anzuzeigen:

  1. Wählen Sie in der Seitenleiste der Instana-Benutzeroberfläche die Option Infrastruktur.
  2. Klicken Sie auf einen bestimmten überwachten Host.

Sie können ein Host-Dashboard mit allen erfassten Metriken und überwachten Prozessen sehen.

Konfigurationsdaten

  • Version
  • SID
  • Servicenamen
  • Startzeit
  • CPU-Anzahl
  • Max. Sitzungen
  • DB-Blockgröße

Leistungsmetriken

Metrik Beschreibung Granularität
Anzahl der aktiven Prozesse Anzahl der laufenden Prozesse. 1 Sekunde
Aktive Sitzungen (mehr als 10 Minuten) Alle aktiven Sitzungen in der Datenbank Oracle, die seit mehr als 10 Minuten laufen. 30 Sekunden
DB-Zeit pro Sekunde Zeit, die für die Ausführung der Datenbankaufrufe auf Benutzerebene aufgewendet wird. 1 Sekunde
DB-CPU-Zeit Menge der CPU-Zeit, die für die Ausführung der Datenbankaufrufe auf Benutzerebene aufgewendet wird. 1 Sekunde
SQL-Ausführungszeit Die verstrichene Zeit, in der die SQL-Abfrageanweisungen ausgeführt werden. 1 Sekunde
Analysezeit Die Zeit, die für das Parsen der SQL-Abfrageanweisungen benötigt wird. Sie umfasst sowohl die weiche als auch die harte Parse-Zeit. 1 Sekunde
Datenbank-CPU-Zeit-Verhältnis Menge der in der Datenbank verwendeten CPU durch die gesamte Datenbankzeit. 1 Sekunde
Wartezeit pro Sekunde Wartezeit pro Sekunde für Benutzer-E/A, Andere, System-E/A, Gleichzeitigkeit, Scheduler, Anwendung, Commit, Konfiguration, Verwaltung, Netzwerk und Warteschlange. 1 Sekunde
Trefferquote des Bibliothekscache (Pin-Treffer) Das Verhältnis gibt die Anzahl der Pin-Anfragen an, die zu Pin-Treffern führen. 30 Sekunden
SGA Gesamtspeicher Gesamtspeicher im System Global Area (SGA) in MB. 1 Sekunde
SGA Verwendeter Speicher Von der SGA belegter Speicher in MB. 1 Sekunde
SGA Freier Speicher Freier Speicher in SGA in MB. 1 Sekunde
SGA Pool Name Poolname des System Global Area (SGA). 1 Sekunde
SGA-Pool Gesamtspeicher Gesamtspeicher im SGA-Pool in MB. 1 Sekunde
SGA-Pool Verwendeter Speicher Verwendeter Speicher im SGA-Pool in MB. 1 Sekunde
Anzahl der SQL-Ausführungen Gesamtzahl der ausgeführten SQL-Abfragen. 1 Sekunde
Durchschnittliche SQL-Ausführungszeit Durchschnittliche SQL-Ausführungszeit. 1 Sekunde
Anzahl der SQL-Analysen Harte und Gesamtanzahl der Parse. 1 Sekunde
SQL-Analyse-Verhältnisse Verhältnis der SQL-Ausführungen, die mit Soft Parse und ohne Parse durchgeführt werden. 1 Sekunde
Benutzeraufrufe Anzahl der Aufrufe, Commits und Rollbacks. 1 Sekunde
Pufferchachetrefferquote Prozentsatz der Seiten, die im Puffercache gefunden werden, ohne von der Festplatte gelesen werden zu müssen. 1 Sekunde
Physische und logische Sitzungslesungen Anzahl der physischen und logischen Lesevorgänge. 1 Sekunde
Sitzungen Anzahl der Benutzersitzungen (aktiv und inaktiv) und die Anzahl der Hintergrundsitzungen. 1 Sekunde
Tabellenbereichsbelegung Tablespace-Nutzung (permanent, temporär und undo) in GB, Tablespace-Nutzung in Prozent, maximale Größe des Tablespace und Flag für automatische Erweiterung. 1 Sekunde
Top-CPU-Abfragen (letzte 24 Std.) Liste der Top-CPU-Abfragen der letzten 24 Stunden mit CPU-Zeit in Millisekunden, Anzahl der Festplattenlesungen und der Gesamtzeit, in der die Abfrage ausgeführt wird. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten. 1 Stunde
Abfragen, die keine Bindevariablen verwenden Liste der Abfragen, die keine Bindungsvariablen im Code verwenden, mit der Anzahl der Abfragekopien, der Anzahl der Abfrageausführungen und dem Gesamtspeicher, der von der SQL-Abfrage in MB verwendet wird. 1 Stunde
Wichtigste Abfragen mit abgelaufener Zeit Liste der Abfragen mit der höchsten verstrichenen Zeit mit SQL-ID, SQL-Abfrage und Ausführungszeit in Minuten. 60 Sekunden
Protokoll der aktiven Sitzung (letzte 1 Std.) Stichprobenartige Sitzungsaktivität in der Datenbank während der letzten Stunde mit SQL-ID, prozentualer Auslastung und Sitzungszahl. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten. 60 Sekunden
Top Ten der CPU-belastenden Sitzungen Liste der zehn Sitzungen mit dem höchsten CPU-Verbrauch mit Sitzungs-ID, Seriennummer, CPU-Zeit in Minuten und Name des Betriebssystemprogramms. 60 Sekunden
Meistgenutzte CPU-Sitzungen (letzte 10 Minuten) Liste der Sitzungen mit dem höchsten CPU-Verbrauch in den letzten 10 Minuten mit Sitzungs-ID, Seriennummer und Gesamtzeit, in der die Abfrage ausgeführt wurde. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten. 30 Sekunden
Top Ten SQL mit hohem IO (letzte 1 Std.) Liste der zehn wichtigsten SQL-Abfragen mit hohem E/A in der letzten Stunde mit SQL-ID, Benutzername und Gesamtwartezeit in Millisekunden. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten. 60 Sekunden
Aktuelle blockierende Sitzungen Informationen über die Blockierungssitzungen. 30 Sekunden
Vordergrundsitzungen Aktive Sitzungen im Vordergrund. 60 Sekunden
SQL verbraucht mehr CPU Liste der SQL-Abfragen, die mehr CPU verbrauchen. 60 Sekunden
Top Ten SQL mit hohem IO der letzten 24 Std Liste der zehn wichtigsten SQL-Abfragen mit hohem E/A in den letzten 24 Stunden. Diese Metrik erfordert die Oracle Diagnostic Pack-Lizenz für die im Abschnitt Erforderliche DB-Berechtigungen angegebenen Ansichten. 1 Stunde

Signaturen für Allgemeinzustand

Für jeden Sensor wird eine kuratierte Wissensbasis von Gesundheitssignaturen kontinuierlich anhand der eingehenden Metriken ausgewertet und verwendet, um Probleme oder Vorfälle zu melden, die den Benutzer betreffen.