Auf dieser Seite erfahren Sie, wie Sie Cloud Logging und Cloud Monitoring mit Service Extensions-Callouts für Cloud Load Balancing konfigurieren und verwenden.
Logging
In diesem Abschnitt wird das Logging für Application Load Balancer-Callouts beschrieben.
Logging für einen Backend-Dienst aktivieren
Sie können das Logging für Application Load Balancer-Callouts aktivieren, während Sie den Dienst erstellen. Dazu aktivieren Sie das Logging für den Backend-Dienst, der das Ziel einer Anfrage ist (und nicht für den Backend-Dienst, der mit der Erweiterung verknüpft ist).
Verwenden Sie den
gcloud compute backend-services update Befehl, um das Logging für den Ziel-Backend-Dienst zu aktivieren.
gcloud compute backend-services update BACKEND_SERVICE \
--enable-logging \
--logging-sample-rate=RATE \
--region=REGION \
--logging-optional=LOGGING_OPTIONAL_MODE \
--logging-optional-fields=OPTIONAL_FIELDS
Ersetzen Sie Folgendes:
BACKEND_SERVICE: der Name des Backend-DienstesRATE: ein Wert zwischen0.0und1.0, wobei0.0bedeutet, dass keine Anfragen protokolliert werden, und1.0, dass 100% der Anfragen protokolliert werden. Der Standardwert ist1.0. Diese Einstellung ist nur wirksam wenn sie mit demenable-loggingParameter verwendet wird. Wenn Sieenable-loggingweglassen, ist das Logging deaktiviert.REGION: die Region des Back-EndsLOGGING_OPTIONAL_MODE: aktiviert das Logging für optionale Felder in einem der folgenden Modi:INCLUDE_ALL_OPTIONAL: schließt alle optionalen Felder ein.EXCLUDE_ALL_OPTIONAL(Standard): schließt alle optionalen Felder aus.CUSTOM: schließt eine benutzerdefinierte Liste optionaler Felder ein.
OPTIONAL_FIELDS: eine durch Kommas getrennte Liste optionaler Felder, wenn Sie den ModusCUSTOMauswählen
Nachdem Sie das Logging für den Backend-Dienst aktiviert haben, werden HTTP- oder HTTPS-Anfragen mit Cloud Logging-Anfragen protokolliert.
Rufen Sie in der Google Cloud Console die Seite Log-Explorer auf, um sich Logs anzusehen.
Weitere Informationen finden Sie auf den Seiten zur Fehlerbehebung in der Application Load Balancer-Dokumentation, z. B. unter Logging und Monitoring für Application Load Balancer.
Logmeldungen für einen Backend-Dienst
Im Allgemeinen enthalten Application Load Balancer-Logeinträge Informationen, die für das Monitoring und die Fehlerbehebung bei Ihrem HTTP- oder HTTPS-Traffic nützlich sind. Folgende Informationen sind in ihnen enthalten:
- Informationen, die in den meisten Google Cloud Logs angezeigt werden, z. B. Schweregrad, Projekt-ID, Projektnummer und Zeitstempel, wie im LogEntry-Log beschrieben.
- HttpRequest-Logfelder.
Anfragelogs für HTTP- und HTTPS-Load-Balancer enthalten ein service_extension_info-Objekt in der JSON-Nutzlast des Load Balancer-Logeintrags mit den folgenden Informationen:
| Feld | Typ | Beschreibung |
|---|---|---|
backend_target_name |
String | Name des Backend-Ziels der Erweiterung. |
backend_target_type |
String | Typ des Backend-Ziels. |
chain |
String | Name der Erweiterungskette in der Service Extension-Ressource, die mit der Anfrage übereinstimmt. |
extension |
String | Name der Erweiterung in der Erweiterungskette. |
failed_open |
boolean | Wenn für die Erweiterungskonfiguration failOpen
auf true gesetzt ist, gibt der Wert true für diesen Messwert an, dass
die Verarbeitung fortgesetzt wurde, als das Zeitlimit für die Erweiterung überschritten wurde oder sie fehlgeschlagen ist.
Gilt nur für regionale externe Application Load Balancer, regionale interne Application Load Balancer und regionenübergreifende interne Application Load Balancer. |
grpc_status |
enum | Der letzte Status des gRPC-Streams. Weitere Informationen finden Sie unter gRPC-Statuscodes. |
per_processing_request_info |
Array | Eine Liste mit entweder ProcessingRequest-Statistiken für ext_proc-Erweiterungen oder CheckRequest-Statistiken für ext_authz-Erweiterungen, die über den gRPC-Stream auftreten.
|
per_processing_request_info[].event_type |
enum | Der Ereignistyp von ProcessingRequest. Kann einer der folgenden Werte sein:
REQUEST_HEADERS, REQUEST_BODY,
RESPONSE_HEADERS, oder RESPONSE_BODY.
|
per_processing_request_info[].latency |
Dauer | Die Dauer vom Senden des ersten Byte der ProcessingRequest
Nachricht an die Erweiterung bis zum Empfang des letzten Byte der
ProcessingResponse Nachricht. |
per_processing_request_info[].processing_effect |
enum | Das Ergebnis der Verarbeitung für jedes Ereignis in einer Verarbeitungs
anfrage.
Gilt nur für regionale externe Application Load Balancer, regionale interne Application Load Balancer und
regionenübergreifende interne Application Load Balancer.
Kann einer der folgenden Werte sein:
|
per_processing_request_info[].processing_effect_details |
String | Wenn processing_effect den Wert MUTATION_REJECTED hat, sind hier die Details dazu angegeben, warum eine Änderung abgelehnt wurde.
Gilt nur für regionale externe Application Load Balancer, regionale interne Application Load Balancer und regionenübergreifende interne Application Load Balancer. |
resource |
String | Name der Erweiterungsressource |
Monitoring
In diesem Abschnitt wird beschrieben, wie Sie Callouts überwachen, die mit Service Extensions für Cloud Load Balancing konfiguriert wurden.
Monitoring-Dashboard aufrufen
Application Load Balancer exportieren Monitoringdaten nach Cloud Monitoring.
Sie können Monitoring-Messwerte für folgende Zwecke verwenden:
- Bewertung der Konfiguration, Nutzung und Leistung eines Load-Balancers
- Fehlerbehebung
- Verbesserung der Ressourcenauslastung und Nutzerfreundlichkeit
So rufen Sie ein vordefiniertes Dashboard auf:
- Rufen Sie in der Google Cloud Console die Seite Dashboard-Übersicht auf.
- Klicken Sie im Bereich Kategorien auf GCP.
- Wenn Sie eine Liste der Dashboards für alle Ihre Load Balancer aufrufen möchten, klicken Sie in der Liste GCP-Dashboards auf das Dashboard Google Cloud Load Balancer. Wenn Sie das Dashboard eines bestimmten Load Balancers aufrufen möchten, suchen Sie den Load Balancer in der Liste und klicken Sie auf seinen Namen.
- Wenn Sie nur die vordefinierten Dashboards für Ihre Load Balancer aufrufen möchten, wählen Sie das entsprechende Dashboard aus.
Zusätzlich zu den vordefinierten Dashboards in Monitoring können Sie benutzerdefinierte Dashboards erstellen, Benachrichtigungen einrichten und die Messwerte über die Cloud Monitoring APIabfragen.
Weitere Informationen finden Sie auf den Seiten zur Fehlerbehebung in der Application Load Balancer-Dokumentation, z. B. unter Logging und Monitoring für Application Load Balancer.
Monitoring-Messwerte für Callouts
Sie können die folgenden Messwerte für Callout-Backend-Dienste überwachen.
In Vorschau können Sie die folgenden Messwerte
für Erweiterungen auf regionalen externen Application Load Balancern, regionalen internen Application Load Balancern und
regionenübergreifenden internen Application Load Balancern überwachen. Diese Messwerte haben das Präfix
networkservices.googleapis.com. Das Präfix wird in den Einträgen in der folgenden Tabelle weggelassen.
Die folgende Tabelle enthält den Messwerttyp, den Anzeigenamen, die Art, den Typ, die Einheit und die Beschreibung für jeden Messwert.
| Messwerttyp | Anzeigename
Art, Typ, Einheit Beschreibung |
|---|---|
extension/invocation_count
|
Anzahl der Erweiterungsaufrufe
DELTA, INT64, 1
Die Anzahl der Aufrufe, die an die Erweiterung gesendet wurden. |
extension/invocation_latencies
|
Latenzen der Erweiterungsaufrufe
DELTA, DISTRIBUTION, ms
Die Verteilung, die aus der Latenz jedes Erweiterungsaufrufs berechnet wird. |
extension/sent_chunks_count
|
Anzahl der gesendeten Erweiterungs-Chunks
DELTA, INT64, 1
Gilt nur für request_body und response_body Ereignisse.
Die Anzahl der Daten-Chunks, die an die Erweiterung gesendet wurden. |
extension/received_chunks_count
|
Anzahl der empfangenen Erweiterungs-Chunks
DELTA, INT64, 1
Gilt nur für request_body und response_body Ereignisse.
Die Anzahl der von der Erweiterung empfangenen Chunks. |
extension/failed_open_count
|
Anzahl der fehlgeschlagenen Erweiterungsaufrufe mit Fail-Open
DELTA, INT64, 1
Die Anzahl der Aufrufe, die fehlgeschlagen sind, als das System für Fail-Open konfiguriert war und die Anfrage fortgesetzt werden konnte. |
extension/mutation_rejections_count
|
Anzahl der abgelehnten Erweiterungsänderungen
DELTA, INT64, 1
Die Anzahl der Aufrufe, bei denen Änderungen an Headern, Textkörpern oder Trailern angefordert wurden, die aber abgelehnt wurden. Ablehnungen können aus verschiedenen Gründen erfolgen, z. B. wenn die Änderung ungültig ist oder Größenbeschränkungen überschreitet. |
extension/sent_bytes_count
|
Anzahl der gesendeten Erweiterungs-Byte
DELTA, INT64, By
Die Anzahl der Byte, die an die Erweiterung gesendet wurden. |
extension/received_bytes_count
|
Anzahl der empfangenen Erweiterungs-Byte
DELTA, INT64, By
Die Anzahl der von der Erweiterung empfangenen Byte. |
Sie können auch die folgenden Messwerte überwachen. Diese Messwerte haben das Präfix
loadbalancing.googleapis.com/. Das Präfix wird in den Einträgen in der Tabelle weggelassen.
| Messwerttyp | Anzeigename
Art, Typ, Einheit Beschreibung |
|---|---|
https/backend_request_count,
https/external/regional/backend_request_count,
https/internal/backend_request_count
|
Anzahl der Backend-Anfragen
DELTA, INT64, 1
Die Anzahl der Aufrufe eines Callout-Backend-Dienstes vom Application Load Balancer. |
https/backend_request_bytes_count,
https/external/regional/backend_request_bytes_count,
https/internal/backend_request_bytes_count
|
Backend-Anfragebyte
DELTA, INT64, By
Die Anzahl der Byte, die vom Load Balancer an den Callout-Backend-Dienst gesendet wurden. |
https/backend_response_bytes_count,
https/external/regional/backend_response_bytes_count,
https/internal/backend_response_bytes_count
|
Backend-Antwortbyte
DELTA, INT64, By
Die Anzahl der Byte, die vom Erweiterungs-Backend vom Load Balancer empfangen wurden. |
https/backend_latencies,
https/external/regional/backend_latencies,
https/internal/backend_latencies
|
Backend-Latenz
DELTA, DISTRIBUTION, ms
Eine Verteilung, die aus der Summe der Latenzen jedes Erweiterungsaufrufs zwischen dem Load Balancer und dem Callout-Backend-Dienst berechnet wird. Alle 60 Sekunden wird eine Stichprobe erstellt. |