Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mit Azure Database for PostgreSQL können Sie die Standardprotokolle von Postgres konfigurieren und darauf zugreifen. Die Protokolle dienen zur Identifizierung, Behebung und Reparatur von Konfigurationsfehlern und suboptimaler Leistung. Beispiele für Protokollierungsinformationen, für die die Konfiguration und der Zugriff möglich sind, sind Fehler, Abfrageinformationen, Autovacuum-Datensätze, Verbindungen und Prüfpunkte. (Der Zugriff auf Transaktionsprotokolle ist nicht verfügbar).
Die Überwachungsprotokollierung wird über eine Postgres-Erweiterung (pgaudit) bereitgestellt. Weitere Informationen finden Sie im Artikel zu den Konzepten zur Überwachung.
Konfigurieren der Protokollierung
Sie können die Postgres-Standardprotokollierung auf dem Server mit Serverparametern für die Protokollierung konfigurieren. Weitere Informationen zu Postgres-Protokollparametern finden Sie in den Abschnitten zu den Themen Wann wird protokolliert? und Was wird protokolliert? der Postgres-Dokumentation. Die meisten, aber nicht alle, Postgres-Protokollierungsparameter stehen zur Konfiguration in Azure-Datenbank für PostgreSQL zur Verfügung.
Informationen zum Konfigurieren von Parametern in der Azure-Datenbank für PostgreSQL finden Sie in der Portaldokumentation oder in der CLI-Dokumentation.
Hinweis
Um ein hohes Volumen von Protokollen zu konfigurieren, können Sie einen erheblichen Leistungsaufwand hinzufügen. Die Protokollierung von Anweisungen kann sich beispielsweise auf die Leistung auswirken.
Zugriffsprotokolle
Azure Database for PostgreSQL ist in Azure Monitor-Diagnoseeinstellungen integriert. Mithilfe von Diagnoseeinstellungen können Sie PostgreSQL-Protokolle im JSON-Format an Azure Monitor Logs für Analysen und Warnungen senden. Sie können sie auch in Event Hubs streamen oder in Azure Storage archivieren.
Zugriffssteuerung für Protokolle
Der Zugriff auf Serverprotokolle wird über Azure Role-Based Access Control (RBAC) gesteuert. Jede Rolle, die Lesezugriff auf den Server bietet, ermöglicht auch das Herunterladen von Protokollen. Dazu gehören integrierte Rollen wie:
- Leser
- Benutzer mit Leseberechtigung für Überwachungsdaten
- Log Analytics-Leser
- Oder gleichwertige benutzerdefinierte Rollen
Warnung
Protokolle können vertrauliche Informationen enthalten, z. B. Anmeldeinformationen, je nach Protokollierungskonfiguration.
Datenaufbewahrungsrichtlinie und Preisübersicht
Für Protokolle, die an Event Hubs oder ein Speicherkonto gesendet werden, können Sie eine Aufbewahrungsrichtlinie einrichten, um Daten nach einem bestimmten Zeitraum automatisch zu löschen. Log Analytics-Kosten hängen von zwei Faktoren ab:
- Datenerfassung: Die Gebühren basieren auf dem Datenvolumen, das im Arbeitsbereich erfasst wird.
- Datenaufbewahrung: Die in Ihrem Log Analytics-Arbeitsbereich gespeicherten Protokolle werden die ersten 31 Tage lang kostenlos aufbewahrt. Über diesen kostenlosen Aufbewahrungszeitraum hinaus gibt es eine Gebühr für das Speichern von Daten, die täglich pro Rata berechnet werden, basierend auf der Datenmenge (in GB), die jeden Monat aufbewahrt wird.
Eine Aufschlüsselung der Kosten für die Erfassung und Aufbewahrung von Daten finden Sie auf der Azure Monitor-Preisseite.
Protokollformat
In der folgenden Tabelle sind die Felder für den Typ PostgreSQLLogs beschrieben. Je nach ausgewähltem Ausgabeendpunkt können die enthaltenen Felder und die Reihenfolge, in der sie angezeigt werden, variieren.
| Feld | Beschreibung |
|---|---|
| TenantId | Ihre Mandanten-ID |
| SourceSystem | Azure |
| ZeitErzeugt [UTC] | Zeitstempel für den Aufzeichnungsbeginn des Protokolls in UTC |
| type | Typ des Protokolls Immer AzureDiagnostics |
| SubscriptionId | GUID für das Abonnement, zu dem der Server gehört |
| ResourceGroup | Name der Ressourcengruppe, zu der der Server gehört |
| ResourceProvider | Name des Ressourcenanbieters Immer MICROSOFT.DBFORPOSTGRESQL |
| ResourceType | FlexibleServers |
| resourceId | Ressourcen-URI |
| Resource | Name des Servers |
| Category | PostgreSQLLogs |
| Vorgangsname | LogEvent |
| errorLevel_s | Protokollierungsstufe, z.B.: LOG, ERROR, NOTICE |
| processId_d | Prozess-ID des PostgreSQL-Back-Ends |
| sqlerrcode_s | PostgreSQL-Fehlercode gemäß den Konventionen des SQL-Standards für SQLSTATE-Codes |
| `Message` | Primäre Protokollmeldung |
| Detail | Sekundäre Protokollmeldung (falls zutreffend) |
| ColumnName | Name der Spalte (falls zutreffend) |
| SchemaName | Name des Schemas (falls zutreffend) |
| DatatypeName | Name des Datentyps (falls zutreffend) |
| _ResourceId | Ressourcen-URI |
Bekannte Einschränkungen
- Protokollereignisgröße: Abfragepläne oder Protokollnachrichten, die größer als 65 KB sind, werden in Azure Monitor-Protokollen nicht erfasst. Dies ist ein plattformweites Azure Monitor-Limit. Daher können komplexe Abfragen (z. B. mit geschachtelten Ansichten) unvollständige oder fehlende Abfrageplanausgabe in Serverprotokollen generieren.
Andere Einschränkungen: Andere plattformweite Grenzwerte gelten für Azure Monitor-Protokolle, z. B. Kontingente für Warnungsregeln und die Größe des Abfrageergebnisses. Ausführliche Informationen finden Sie in der Dokumentation zu den Azure Monitor-Dienstbeschränkungen.