Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
databaseActivityEventJSON-Array für Datenbank-Aktivitätsstreams auflisten
Die Prüfprotokollnutzlast ist ein verschlüsseltes JSON-Array databaseActivityEventList
. In der folgenden Tabelle sind die Felder für jedes Aktivitätsereignis im entschlüsselten Array DatabaseActivityEventList
eines Prüfprotokolls alphabetisch aufgelistet. Die Felder unterscheiden sich je nachdem, ob Sie Aurora PostgreSQL oder Aurora MySQL verwenden. Näheres entnehmen Sie bitte der Tabelle, die für Ihre Datenbank-Engine gilt.
Wichtig
Die Ereignisstruktur kann sich ändern. Aurora könnte in Zukunft neue Felder zu Aktivitätsereignissen hinzufügen. Stellen Sie bei Anwendungen, welche die JSON-Daten analysieren, sicher, dass Ihr Code unbekannte Feldnamen ignorieren oder entsprechende Aktionen durchführen kann.
databaseActivityEventFelder für Aurora PostgreSQL auflisten
Die folgenden databaseActivityEventList
Felder sind für Aurora PostgreSQL.
Feld | Datentyp | Beschreibung |
---|---|---|
class |
string |
Die Aktivitätsereignisklasse. Gültige Werte für Aurora PostgreSQL sind die folgenden:
|
clientApplication |
string | Die Anwendung, die der Client laut Meldung für die Verbindung verwendet hat. Der Client muss diese Informationen nicht angeben, der Wert kann daher Null sein. |
command |
string | Der Name des SQL-Befehls ohne Befehlsdetails. |
commandText |
string |
Die vom Benutzer übergebene eigentliche SQL-Anweisung. Bei Aurora PostgreSQL ist der Wert identisch mit der ursprünglichen SQL-Anweisung. Dieses Feld wird für alle Arten von Datensätzen verwendet, mit Ausnahme von Verbindungs- oder Verbindungstrennungsdatensätzen, bei denen der Wert Null ist. WichtigDer vollständige SQL-Text jeder Anweisung ist im Prüfprotokoll des Aktivitäts-Streams sichtbar, inklusive aller sensiblen Daten. Datenbankbenutzerkennwörter werden jedoch redigiert, wenn Aurora sie wie in der folgenden SQL-Anweisung aus dem Kontext ermitteln kann.
|
databaseName |
string | Die Datenbank, zu der der Benutzer eine Verbindung hergestellt hat. |
dbProtocol |
string | Das Datenbankprotokoll, z. B. Postgres 3.0 . |
dbUserName |
string | Der Datenbankbenutzer, mit dem sich der Client authentifiziert hat. |
errorMessage (nur Datenbank-Aktivitätsdatensätze der Version 1.1) |
string |
Wenn ein Fehler aufgetreten ist, wird dieses Feld mit der Fehlermeldung gefüllt, die vom DB-Server generiert worden wäre. Der Ein Fehler wird als jede Aktivität definiert, die ein vom Client sichtbares PostgreSQL-Fehlerprotokollereignis mit einem Schweregrad von Interne PostgreSQL-Serverfehler wie Hintergrund-Checkpointer-Prozessfehler erzeugen keine Fehlermeldung. Datensätze für solche Ereignisse werden jedoch weiterhin ausgegeben, unabhängig von der Einstellung des Schweregrads des Protokolls. Dadurch wird verhindert, dass Angreifer die Protokollierung deaktivieren, um eine Erkennung zu vermeiden. Siehe auch das Feld |
exitCode |
int | Ein Wert, der für einen Sitzungsbeendigungs-Datensatz verwendet wird. Bei einer sauberen Beendigung ist hier der Beendigungscode enthalten. In manchen Fehlersituationen kann nicht immer ein Beendigungscode erhalten werden. Beispiele: exit() von PostgreSQL oder Ausführung eines Befehls wie kill -9 durch einen Operator.Wenn ein Fehler aufgetreten ist, zeigt das Siehe auch das Feld |
logTime |
string | Ein Zeitstempel wie im Prüfcodepfad aufgezeichnet. Dies stellt die Endzeit der SQL-Anweisungsausführung dar. Siehe auch das Feld startTime . |
netProtocol |
string | Das Netzwerkkommunikationsprotokoll. |
objectName |
string | Der Name des Datenbankobjekts, wenn die SQL-Anweisung für eines ausgeführt wird. Dieses Feld wird nur verwendet, wenn die SQL-Anweisung für ein Datenbankobjekt ausgeführt wird. Falls die SQL-Anweisung nicht für ein Objekt ausgeführt wird, lautet dieser Wert Null. |
objectType |
string | Der Datenbankobjekttyp wie z. B. Tabelle, Index, Ansicht usw. Dieses Feld wird nur verwendet, wenn die SQL-Anweisung für ein Datenbankobjekt ausgeführt wird. Falls die SQL-Anweisung nicht für ein Objekt ausgeführt wird, lautet dieser Wert Null. Gültige Werte sind unter anderem:
|
paramList |
string | Ein Array durch Kommas getrennter Parameter, die an die SQL-Anweisung übergeben werden. Wenn die SQL-Anweisung keine Parameter beinhaltet, ist dieser Wert ein leeres Array. |
pid |
int | Die Prozess-ID des Back-End-Prozesses, der für die Client-Verbindung zugewiesen wird. |
remoteHost |
string | Entweder die Client-IP-Adresse oder der Hostname. Was davon verwendet wird, ist bei Aurora PostgreSQL von der Parametereinstellung log_hostname der Datenbank abhängig. Der remoteHost Wert beinhaltet auch Aktivitäten des localhost Benutzers [local] und gibt diese anrdsadmin . |
remotePort |
Zeichenfolge | Die Portnummer des Clients. |
rowCount |
int | Die Anzahl der Tabellenzeilen, die von der SQL-Anweisung betroffen sind bzw. abgerufen werden. Dieses Feld wird nur für SQL-Anweisungen verwendet, bei denen es sich um DML-Anweisungen (DML = Data Manipulation Language) handelt. Falls die SQL-Anweisung keine DML-Anweisung ist, lautet dieser Wert Null. |
serverHost |
Zeichenfolge | Die Host-IP-Adresse des Datenbankservers. Der serverHost Wert umfasst auch Aktivitäten des rdsadmin Benutzers [local] und localhost welche darauf hinweisen. |
serverType |
Zeichenfolge | Der Datenbankservertyp, z. B PostgreSQL . |
serverVersion |
string | Die Datenbankserver-Version, z. B. 2.3.1 für Aurora PostgreSQL. |
serviceName |
string | Der Name des Service, beispielsweise Amazon Aurora PostgreSQL-Compatible edition . |
sessionId |
int | Eine pseudoeindeutige Sitzungskennung. |
sessionId |
int | Eine pseudoeindeutige Sitzungskennung. |
startTime (nur Datenbank-Aktivitätsdatensätze der Version 1.1) |
string |
Die Zeit, zu der die Ausführung für die SQL-Anweisung begann. Um die ungefähre Ausführungszeit der SQL-Anweisung zu berechnen, verwenden Sie |
statementId |
int | Eine ID für die SQL-Anweisung des Clients. Dieser Zähler auf Sitzungsebene erhöht sich mit jeder vom Client eingegebenen SQL-Anweisung. |
substatementId |
int | Eine ID für eine SQL-Unteranweisung. Dieser Wert zählt die enthaltenen Unteranweisungen für jede über das Feld statementId angegebene SQL-Anweisung. |
type |
string | Der Ereignistyp. Gültige Werte sind record oder heartbeat . |
databaseActivityEventFelder für Aurora MySQL auflisten
Die folgenden databaseActivityEventList
Felder sind für Aurora MySQL.
Feld | Datentyp | Beschreibung |
---|---|---|
class |
string |
Die Aktivitätsereignisklasse. Gültige Werte für Aurora MySQL sind die folgenden:
|
clientApplication |
string | Die Anwendung, die der Client laut Meldung für die Verbindung verwendet hat. Der Client muss diese Informationen nicht angeben, der Wert kann daher Null sein. |
command |
string |
Die allgemeine Kategorie der SQL-Anweisung. Die Werte für dieses Feld hängen vom Wert von a Wenn
Wenn
|
commandText |
string |
Bei Ereignissen mit dem Bei Ereignissen mit einem Bei Aurora MySQL wird Zeichen, z. B. Anführungszeichen, ein Backslash vorangestellt, der ein Escape-Zeichen darstellt. WichtigDer vollständige SQL-Text jeder Anweisung ist im Prüfprotokoll sichtbar, inklusive aller sensiblen Daten. Datenbankbenutzerkennwörter werden jedoch redigiert, wenn Aurora sie wie in der folgenden SQL-Anweisung aus dem Kontext ermitteln kann.
AnmerkungGeben Sie aus Sicherheitsgründen ein anderes Passwort als hier angegeben an. |
databaseName |
Zeichenfolge | Die Datenbank, zu der der Benutzer eine Verbindung hergestellt hat. |
dbProtocol |
string | Das Datenbankprotokoll. Derzeit ist dieser Wert bei Aurora MySQL immer MySQL . |
dbUserName |
string | Der Datenbankbenutzer, mit dem sich der Client authentifiziert hat. |
endTime (nur Datenbank-Aktivitätsdatensätze der Version 1.2) |
string |
Die Zeit, zu der die Ausführung für die SQL-Anweisung endete. Sie wird im UTC-Format (Coordinated Universal Time) dargestellt. Um die Ausführungszeit der SQL-Anweisung zu berechnen, verwenden Sie |
errorMessage (nur Datenbank-Aktivitätsdatensätze der Version 1.1) |
string |
Wenn ein Fehler aufgetreten ist, wird dieses Feld mit der Fehlermeldung gefüllt, die vom DB-Server generiert worden wäre. Der Ein Fehler wird als jede Aktivität definiert, die ein vom Client sichtbares MySQL-Fehlerprotokollereignis mit einem Schweregrad von Interne MySQL-Serverfehler wie Hintergrund-Checkpointer-Prozessfehler erzeugen keine Fehlermeldung. Datensätze für solche Ereignisse werden jedoch weiterhin ausgegeben, unabhängig von der Einstellung des Schweregrads des Protokolls. Dadurch wird verhindert, dass Angreifer die Protokollierung deaktivieren, um eine Erkennung zu vermeiden. Siehe auch das Feld |
exitCode |
int | Ein Wert, der für einen Sitzungsbeendigungs-Datensatz verwendet wird. Bei einer sauberen Beendigung ist hier der Beendigungscode enthalten. In manchen Fehlersituationen kann nicht immer ein Beendigungscode erhalten werden. In solchen Fällen kann dieser Wert Null oder leer sein. |
logTime |
string | Ein Zeitstempel wie im Prüfcodepfad aufgezeichnet. Sie wird im UTC-Format (Coordinated Universal Time) dargestellt. Die genaueste Methode zum Berechnen der Anweisungsdauer finden Sie in den Feldern startTime und endTime . |
netProtocol |
string | Das Netzwerkkommunikationsprotokoll. Derzeit ist dieser Wert bei Aurora MySQL immer TCP . |
objectName |
string | Der Name des Datenbankobjekts, wenn die SQL-Anweisung für eines ausgeführt wird. Dieses Feld wird nur verwendet, wenn die SQL-Anweisung für ein Datenbankobjekt ausgeführt wird. Falls die SQL-Anweisung nicht für ein Objekt ausgeführt wird, ist dieser Wert leer. Um den vollständig qualifizierten Namen des Objekts zu erstellen, kombinieren Sie databaseName und objectName . Wenn die Abfrage mehrere Objekte umfasst, kann dieses Feld eine durch Komma getrennte Liste von Namen sein. |
objectType |
string |
Der Datenbankobjekttyp, z. B. Tabelle, Index usw. Dieses Feld wird nur verwendet, wenn die SQL-Anweisung für ein Datenbankobjekt ausgeführt wird. Falls die SQL-Anweisung nicht für ein Objekt ausgeführt wird, lautet dieser Wert Null. Gültige Werte für Aurora MySQL sind unter anderem:
|
paramList |
string | Dieses Feld wird für Aurora MySQL nicht verwendet und ist immer Null. |
pid |
int | Die Prozess-ID des Back-End-Prozesses, der für die Client-Verbindung zugewiesen wird. Wenn der Datenbankserver neu gestartet wird, ändert sich die pid und der Zähler für das Feld statementId beginnt von vorn. |
remoteHost |
string | Entweder die IP-Adresse oder der Hostname des Clients, der die SQL-Anweisung ausgegeben hat. Was davon verwendet wird, ist bei Aurora MySQL von der Parametereinstellung skip_name_resolve der Datenbank abhängig. Der Wert localhost gibt die Aktivität des speziellen Benutzers rdsadmin an. |
remotePort |
string | Die Portnummer des Clients. |
rowCount |
int | Die Anzahl der Zeilen, die von der SQL-Anweisung zurückgegeben werden. Wenn eine SELECT-Anweisung beispielsweise 10 Zeilen zurückgibt, beträgt rowCount 10. Für INSERT- oder UPDATE-Anweisungen ist der RowCount 0. |
serverHost |
Zeichenfolge | Die Datenbankserver-Instance-ID. |
serverType |
Zeichenfolge | Der Datenbankservertyp, z. B MySQL . |
serverVersion |
string | Die Version des Datenbankservers. Derzeit ist dieser Wert bei Aurora MySQL immer MySQL 5.7.12 . |
serviceName |
string | Name des Service. Derzeit ist dieser Wert bei Aurora MySQL immer Amazon Aurora MySQL . |
sessionId |
int | Eine pseudoeindeutige Sitzungskennung. |
startTime (nur Datenbank-Aktivitätsdatensätze der Version 1.1) |
string |
Die Zeit, zu der die Ausführung für die SQL-Anweisung begann. Sie wird im UTC-Format (Coordinated Universal Time) dargestellt. Um die Ausführungszeit der SQL-Anweisung zu berechnen, verwenden Sie |
statementId |
int | Eine ID für die SQL-Anweisung des Clients. Der Zähler erhöht sich mit jeder vom Client eingegebenen SQL-Anweisung. Der Zähler wird zurückgesetzt, wenn die DB-Instance neu gestartet wird. |
substatementId |
int | Eine ID für eine SQL-Unteranweisung. Dieser Wert ist 1 für Ereignisse mit der Klasse MAIN und 2 für Ereignisse mit der Klasse AUX . Verwenden Sie das statementId -Feld, um alle Ereignisse zu identifizieren, die von derselben Anweisung generiert werden. |
transactionId (nur Datenbank-Aktivitätsdatensätze der Version 1.2) |
int | Eine ID für eine Transaktion. |
type |
string | Der Ereignistyp. Gültige Werte sind record oder heartbeat . |