Logs und Messwerte
Logging
Cloud NAT-Logging ermöglicht das Logging von NAT-Verbindungen und Fehlern. Wenn Cloud NAT-Logging aktiviert ist, kann für jedes der folgenden Szenarien ein Logeintrag erstellt werden:
- Wenn eine Netzwerkverbindung mit NAT erstellt wird.
- Wenn ein Paket verworfen wird, weil kein Port für NAT verfügbar war.
Sie können entweder beide Arten von Ereignissen oder nur eines der beiden Ereignisse protokollieren.
Erstellte Logs werden an Cloud Logging gesendet.
Spezifikationen
Für Cloud NAT-Logging gelten die folgenden Spezifikationen:
Cloud NAT-Logging verarbeitet nur TCP- und UDP-Traffic.
Cloud NAT-Logging protokolliert nur verworfene Pakete, die ausgehende TCP- und UDP-Pakete sind. Verworfene eingegangene Pakete werden nicht protokolliert. Wenn beispielsweise eine eingehende Antwort auf eine ausgehende Anfrage aus einem beliebigen Grund verworfen wird, wird kein Fehler protokolliert.
Jede VM-Instanz kann nur eine bestimmte Anzahl von Logeinträgen pro Zeiteinheit proportional zu ihrer Anzahl von vCPUs generieren. Die VM kann 50–100 Logeinträge pro Sekunde und vCPU generieren.
Dieser Schwellenwert gilt für die Anzahl der Ereignisse, die protokolliert werden können. Auch wenn einige Ereignisse herausgefiltert werden, wird ihr Vorkommen auf die Anzahl möglicher Logeinträge angerechnet. Das Einschränken von Logs auf Fehler oder Verbindungen zur Netzwerkadressübersetzung erhöht nicht zwangsläufig die Anzahl der angezeigten Logeinträge. Wenn Sie beispielsweise nur erfolgreiche Verbindungen protokollieren, können übermäßig viele fehlgeschlagene Verbindungsversuche und NAT-Fehler die Anzahl der erfolgreichen Verbindungslogeinträge einschränken.
Beim Cloud NAT-Logging wird nicht jedes einzelne Paket protokolliert. Selbst wenn der Ratengrenzwert der VM nicht erreicht wurde, können einige Bedingungen dazu führen, dass Ereignisse aus dem Log ausgelassen werden. Sie sollten sich auf Einträge im Cloud NAT-Logging verlassen, um fundierte Entscheidungen treffen zu können. Sie dürfen jedoch nicht davon ausgehen, dass ein Ereignis nicht stattgefunden hat.
Logging konfigurieren
So konfigurieren Sie das Cloud NAT-Logging:
Logging aktivieren
Wenn das Logging aktiviert ist, werden alle erfassten Logs standardmäßig an Cloud Logging gesendet. Sie können sie so filtern, dass nur bestimmte Logs gesendet werden.
Sie können diese Werte auch angeben, wenn Sie ein NAT-Gateway erstellen oder bearbeiten. In der folgenden Anleitung wird gezeigt, wie Sie das Logging für ein vorhandenes NAT-Gateway aktivieren.
Console
Wechseln Sie in der Google Cloud Console zur Seite Cloud NAT.
Klicken Sie auf Ihr NAT-Gateway.
Klicken Sie auf Bearbeiten.
Klicken Sie auf Erweiterte Konfigurationen.
Wählen Sie im Bereich Logging eine der folgenden Optionen aus:
- Kein Logging: Logging wird deaktiviert.
- Übersetzung und Fehler: Alle Logs werden an Logging gesendet.
- Nur Übersetzung: Log wird nur dann gesendet, wenn eine Verbindung erstellt wird. Verworfene Pakete werden nicht protokolliert.
- Nur Fehler: Log wird gesendet, wenn ein Paket verworfen wird, weil kein Port verfügbar war; neue Verbindungen werden nicht protokolliert.
Klicken Sie auf Speichern.
gcloud
Führen Sie den Befehl gcloud compute routers nats update aus.
Die folgenden Befehle aktivieren Logging für ein vorhandenes NAT-Gateway.
Ersetzen Sie in jedem Befehl Folgendes:
NAT_GATEWAY: Name des NAT-GatewaysROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostetREGION: Region des Cloud Routers
So protokollieren Sie Ereignisse und Fehler von Netzwerkadressübersetzungen und -fehler:
gcloud compute routers nats update NAT_GATEWAY \
--router=ROUTER_NAME \
--region=REGION \
--enable-logging
So protokollieren Sie nur Ereignisse von Netzwerkadressübersetzungen:
gcloud compute routers nats update NAT_GATEWAY \
--router=ROUTER_NAME \
--region=REGION \
--enable-logging \
--log-filter=TRANSLATIONS_ONLY
So protokollieren Sie nur Fehler:
gcloud compute routers nats update NAT_GATEWAY \
--router=ROUTER_NAME \
--region=REGION \
--enable-logging \
--log-filter=ERRORS_ONLY
Logfilter löschen
Wenn Sie einen Filter haben, können Sie ihn löschen. Das Löschen eines Logfilters bedeutet, dass sowohl Übersetzungsereignisse als auch Fehler im Netzwerk protokolliert werden, sofern Logging aktiviert ist.
Console
Wechseln Sie in der Google Cloud Console zur Seite Cloud NAT.
Klicken Sie auf Ihr NAT-Gateway.
Klicken Sie auf Bearbeiten.
Klicken Sie auf Erweiterte Konfigurationen.
Wählen Sie im Abschnitt Logging die Option Übersetzung und Fehler aus.
Klicken Sie auf Speichern.
gcloud
Führen Sie den Befehl gcloud compute routers nats update aus.
Das Flag --log-filter=ALL im folgenden Befehl legt den Logfilter so fest, dass alle Logs akzeptiert werden.
gcloud compute routers nats update NAT_GATEWAY \
--router=ROUTER_NAME \
--region=REGION \
--log-filter=ALL
Ersetzen Sie Folgendes:
NAT_GATEWAY: Name des NAT-GatewaysROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostetREGION: Region des Cloud Routers
Logging deaktivieren
So deaktivieren Sie das Logging:
Console
Wechseln Sie in der Google Cloud Console zur Seite Cloud NAT.
Klicken Sie auf Ihr NAT-Gateway.
Klicken Sie auf Bearbeiten.
Klicken Sie auf Erweiterte Konfigurationen.
Wählen Sie im Abschnitt Logging die Option Kein Logging aus.
Klicken Sie auf Speichern.
gcloud
Führen Sie den Befehl gcloud compute routers nats update aus.
gcloud compute routers nats update NAT_GATEWAY \
--router=ROUTER_NAME \
--region=REGION \
--no-enable-logging
Ersetzen Sie Folgendes:
NAT_GATEWAY: Name des NAT-GatewaysROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostetREGION: Region des Cloud Routers
Logging-Status bestimmen
So ermitteln Sie den Status für Logging:
Console
Wechseln Sie in der Google Cloud Console zur Seite Cloud NAT.
Klicken Sie auf Ihr NAT-Gateway.
Klicken Sie auf Bearbeiten.
Klicken Sie auf Erweiterte Konfigurationen.
Prüfen Sie die Auswahl im Bereich Logging.
gcloud
gcloud compute routers nats describe NAT_GATEWAY \
--router=ROUTER_NAME \
--region=REGION
Ersetzen Sie Folgendes:
NAT_GATEWAY: Name des NAT-GatewaysROUTER_NAME: Name des Cloud Routers, der das NAT-Gateway hostetREGION: Region des Cloud Routers
Logs ansehen
So rufen Sie NAT-Logs auf:
Console
Rufen Sie in der Google Cloud Console die Seite Log-Explorer auf:
- Um alle NAT-Logs anzuzeigen, wählen Sie im Menü Logname die Option Cloud NAT-Gateway aus.
- Um Logs für nur eine Region anzuzeigen, wählen Sie im Menü Logname die Option Cloud NAT-Gateway aus und bewegen Sie den Cursor nach rechts, um eine Region auszuwählen.
- Um Logs für nur ein Gateway anzusehen, wählen Sie im Menü Logname die Option Cloud NAT-Gateway aus und bewegen Sie den Cursor nach rechts, um eine Region auszuwählen. Bewegen Sie dann den Cursor wieder nach rechts, um ein einzelnes Gateway auszuwählen.
Alternativ können Sie den folgenden Ausdruck in den Abfrageeditor eingeben:
resource.type="nat_gateway"
logName="projects/{#project_id}/logs/compute.googleapis.com%2Fnat_flows"
gcloud
gcloud logging read 'resource.type=nat_gateway' \
--limit=10 \
--format=json
Dabei gilt:
resource.type=nat_gatewaybegrenzt die Ausgabe auf Ihre NAT-Gateways.--limit=10beschränkt die Ausgabe auf 10 Einträge. Sie können einen anderen Wert festlegen, um mehr oder weniger Einträge anzuzeigen, oder ihn vollständig weglassen, um ein kontinuierliches Scrollen der Logs zu sehen.--format=jsonzeigt die Ausgabe im JSON-Format an.
Weitere Optionen finden Sie unter Logeinträge lesen.
Sie können den Export von logbasierten Messwerten für Ressourcenlogs konfigurieren.
Was wird protokolliert?
Cloud NAT-Logeinträge enthalten Informationen, die für das Monitoring und die Fehlerbehebung Ihres NAT-Traffics nützlich sind. Folgende Informationen sind in ihnen enthalten:
- Allgemeine Informationen, die in den meisten Logs von Google Cloud angezeigt werden, wie z. B. Schweregrad, Projekt-ID, Projektnummer und Zeitstempel.
- Spezifische Informationen zu Cloud NAT. Einige Log-Felder enthalten Einträge, die selbst mehrere Felder sind. Diese Einträge und Feldbeschreibungen werden in den folgenden Tabellen dargestellt.
Logfelder
| Feld | Wert | Bedeutung |
|---|---|---|