Log, metriche e tracce

Questo documento spiega come Secure Web Proxy registra i dati operativi, come utilizzare le metriche dell'API Cloud Monitoring per analizzare le prestazioni del proxy e come utilizzare il tracciamento distribuito per osservare i cicli di vita delle richieste.

Log

Secure Web Proxy utilizza Cloud Logging per consentirti di acquisire informazioni ed eseguire varie attività nelle seguenti aree chiave:

  • Monitoraggio e conformità

    • Garantire la conformità alle normative, migliorare la sicurezza di rete e fornire visibilità sul traffico web in uscita inviato alle destinazioni esterne consentite.
    • Acquisisci livelli preziosi di controllo e visibilità sul traffico dei workload.
    • Ottieni insight fondamentali per un monitoraggio efficace del Security Operations Center (SOC).
    • Utilizza i log per rilevare e monitorare gli eventi di sicurezza per rispondere alle minacce in modo proattivo.
  • Deployment e configurazione

    • Monitora la configurazione iniziale dell'infrastruttura, la creazione degli account utente e le modifiche alla configurazione.
    • Monitora i potenziali errori per garantire un deployment fluido e sicuro.
    • Comprendi l'impatto delle modifiche di ottimizzazione delle policy e ottimizza la tua protezione.

Tipi di log

Secure Web Proxy utilizza Logging per acquisire e archiviare i seguenti tipi di log:

Configura gli avvisi dei log

Puoi configurare avvisi per gli eventi che Secure Web Proxy scrive in Logging, ad esempio i rifiuti del traffico o le corrispondenze di regole specifiche. Per istruzioni generali su come configurare questi avvisi, consulta Configura gli avvisi basati su log.

Ecco alcuni esempi di query che puoi utilizzare per configurare gli avvisi basati su log per Secure Web Proxy:

Avviso per il traffico rifiutato da una policy di Secure Web Proxy

Utilizza la seguente query per attivare un avviso quando la policy di Secure Web Proxy nega una richiesta:

logName="projects/PROJECT_ID/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
jsonPayload.enforcedGatewaySecurityPolicy.matchedRules.action="DENIED"

Sostituisci PROJECT_ID con l'ID del progettoGoogle Cloud di destinazione.

Avviso per il traffico negato da una regola di Secure Web Proxy

Utilizza la seguente query per attivare un avviso quando una regola specifica di Secure Web Proxy (ad esempio my-specific-deny-rule) nega una richiesta:

logName="projects/PROJECT_ID/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
jsonPayload.enforcedGatewaySecurityPolicy.matchedRules.action="DENIED"
AND jsonPayload.enforcedGatewaySecurityPolicy.matchedRules.name=~"projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/my-specific-deny-rule$"

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto Google Cloud di destinazione
  • REGION: la regione dell'istanza Secure Web Proxy
  • POLICY_NAME: il nome della policy di Secure Web Proxy

Avviso per il traffico negato da una policy di autorizzazione di Agent Gateway

Quando esegui il deployment dell'istanza Secure Web Proxy come Agent Gateway, utilizza la seguente query per attivare un avviso quando una policy di autorizzazione nega la richiesta di un agente AI:

logName="projects/PROJECT_ID/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
jsonPayload.authzPolicyInfo.result="DENIED"

Sostituisci PROJECT_ID con l'ID del progettoGoogle Cloud di destinazione.

Avviso per il traffico limitato da una policy di limitazione di frequenza del servizio

Utilizza la seguente query per attivare un avviso quando una policy di limitazione di frequenza del servizio limita una richiesta:

logName="projects/PROJECT_ID/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
jsonPayload.rateLimitPolicyInfo.overallResult="THROTTLED"

Sostituisci PROJECT_ID con l'ID del progettoGoogle Cloud di destinazione.

Avviso per le richieste con latenza elevata

Utilizza la seguente query per ricevere una notifica quando le richieste superano una determinata latenza, ad esempio cinque secondi:

logName="projects/'PROJECT_ID'/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
latency >= "5s"

Sostituisci PROJECT_ID con l'ID del progettoGoogle Cloud di destinazione.

Visualizza i log in Cloud Logging

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Selezionare il tuo progetto Google Cloud .

  3. Utilizza i menu a discesa per selezionare la risorsa networkservices.googleapis.com/Gateway o l'istanza di Secure Web Proxy.

Per saperne di più, consulta Utilizzo di Esplora log.

Esempi di voci di log

Secure Web Proxy genera voci di log dettagliate ogni volta che elabora una richiesta, tenendo traccia delle sue azioni e delle norme applicate. I seguenti esempi mostrano come funzionano i log di Secure Web Proxy.

Esempio di voce di log di autorizzazione

La seguente voce di log mostra che l'istanza Secure Web Proxy ha intercettato e ispezionato il traffico HTTPS per www.example.com, quindi ha consentito di procedere al sito web di destinazione. I nomi della policy e della regola sono rispettivamente swp-policy e allow-port-443.

Campo Valori
enforcedGatewaySecurityPolicy
{
        "requestWasTlsIntercepted": true,
        "hostname": "www.example.com",
        "matchedRules": [
          {
            "action": "ALLOWED",
            "name": "projects/76537/locations/us-central1/gatewaySecurityPolicies/swp-policy/rules/allow-port-443"
          }
        ]
      }
httpRequest
{
        "requestMethod": "GET",
        "requestUrl": "https://www.example.com/",
        "requestSize": "41",
        "status": 200,
        "responseSize": "1446",
        "userAgent": "curl/7.74.0",
        "remoteIp": "10.128.0.12:35418",
        "serverIp": "93.184.216.34:443",
        "latency": "0.051800s",
        "protocol": "HTTP/2"
      }
resource
{
        "type": "networkservices.googleapis.com/Gateway",
        "labels": {
          "gateway_name": "multi-level-tlds",
          "network_name": "projects/76537/global/networks/default",
          "location": "us-central1",
          "resource_container": "",
          "gateway_type": "SECURE_WEB_GATEWAY"
        }
      }
timestamp "2024-02-15T16:56:19.570534Z"
severity "INFO"
logName "projects/76537/logs/networkservices.googleapis.com%2Fgateway_requests"
receiveTimestamp "2024-02-15T16:56:20.714988329Z"

Esempio di voce di log di negazione

Questa voce di log mostra che l'istanza di Secure Web Proxy ha ispezionato il traffico per www.example.com:443 e ha negato la richiesta HTTPS a causa della regola default_denied nella policy di Secure Web Proxy.

Campo Valori
enforcedGatewaySecurityPolicy
{
        "hostname": "www.example.com:443",
        "matchedRules": [
          {
            "name": "default_denied",
            "action": "DENIED"
          }
        ]
      }
httpRequest
{
        "requestMethod": "CONNECT",
        "requestSize": "122",
        "status": 403,
        "responseSize": "141",
        "userAgent": "curl/7.74.0",
        "remoteIp": "10.128.0.12:36338",
        "latency": "0.000133s",
        "protocol": "HTTP/1.1"
      }
resource
{
        "type": "networkservices.googleapis.com/Gateway",
        "labels": {
          "gateway_type": "SECURE_WEB_GATEWAY",
          "resource_container": "",
          "location": "us-central1",
          "network_name": "projects/gcp-1768/global/networks/default",
          "gateway_name": "high-latency-repro"
        }
      }
timestamp "2024-02-15T16:55:00.089727Z"
severity "WARNING"
logName "projects/gcp-1768/logs/networkservices.googleapis.com%2Fgateway_requests"
receiveTimestamp "2024-02-15T16:55:04.456901833Z"

Esempio di voce di log della policy di limitazione di frequenza del servizio

La seguente voce di log mostra che l'istanza Secure Web Proxy ha limitato una richiesta perché il client ha superato il RateLimitPolicy (denominato rl-egress-policy) in rl_default_rpm_limit RateLimitBucket.

Campo Valori
rateLimitPolicyInfo
{
          "policies": [
            {
              "name": "projects/76537/locations/us-central1/rateLimitPolicies/rl-egress-policy",
              "buckets": [
                {
                  "bucket": "rl_default_rpm_limit",
                  "key": "spiffe://projects-123.global.workload.id.goog/ns/ns1/sa/hellomcp",
                  "result": "THROTTLED"
                }
              ],
              "result": "THROTTLED",
              "details": "Default user rate limit rate exceeded client-side."
            }
          ],
          "overallResult": "THROTTLED"
        }
httpRequest
{
          "requestMethod": "POST",
          "requestUrl": "https://example.com/v1/chat/completions",
          "requestSize": "144",
          "status": 429,
          "responseSize": "85",
          "userAgent": "curl/7.74.0",
          "remoteIp": "10.128.0.12:35418",
          "serverIp": "93.184.216.34:443",
          "latency": "0.001200s",
          "protocol": "HTTP/2"
        }
resource
{
          "type": "networkservices.googleapis.com/Gateway",
          "labels": {
            "gateway_type": "SECURE_WEB_GATEWAY",
            "resource_container": "",
            "location": "us-central1",
            "network_name": "projects/76537/global/networks/default",
            "gateway_name": "egress-swp-gateway"
          }
        }
timestamp "2026-02-15T16:56:19.570534Z"
severity "WARNING"
logName "projects/76537/logs/networkservices.googleapis.com%2Fgateway_requests"
receiveTimestamp "2026-02-15T16:56:20.714988329Z"

Tracciamento distribuito con Cloud Trace

Secure Web Proxy supporta il tracciamento delle richieste distribuite integrato con Trace.

Correlazione log-traccia

Ogni voce di log delle transazioni del proxy scritta in Logging include un campo trace contenente la stringa della risorsa di traccia Google Cloud :

<pre class="devsite-click-to-copy">
"trace": "projects/PROJECT_ID/traces/TRACE_ID"
</pre>

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del tuo progetto Google Cloud
  • TRACE_ID: ID traccia a 128 bit (esadecimale di 32 caratteri) dal client o dallo span di traccia. Ad esempio, 4bf92f3577b34da6a3ce929d0e0e4736.

Puoi utilizzare questo ID traccia per correlare le voci di log con i relativi intervalli di traccia:

  • Dai log alle tracce: in Esplora log, fai clic sul campo trace di una voce di log, quindi seleziona Visualizza dettagli traccia per aprire la struttura a cascata completa delle richieste in Trace.
  • Da tracce a log: in Trace, fai clic su Mostra log nel riquadro Dettagli traccia per visualizzare tutti i log delle transazioni del proxy associati alla traccia.

Per saperne di più, consulta Tracciamento distribuito con Trace.

Metriche

Le metriche dell'API Cloud Monitoring ti aiutano a osservare le prestazioni, l'integrità e l'utilizzo delle tue istanze Secure Web Proxy.

Risorsa monitorata

Le metriche per Secure Web Proxy vengono esportate nella seguente risorsa monitorata:

  • networkservices.googleapis.com/Gateway: rappresenta un'istanza del gateway Secure Web Proxy.

La tabella seguente descrive le risorse disponibili per networkservices.googleapis.com/Gateway. Puoi utilizzare queste risorse per filtrare e aggregare i dati di monitoraggio.

Etichetta Descrizione
resource_container ID del progetto associato all'istanza del gateway Secure Web Proxy.
location Google Cloud regione in cui è stato eseguito il deployment del gateway.
gateway_id Nome univoco dell'istanza del gateway Secure Web Proxy.
gateway_type Tipo di gateway, impostato su SECURE_WEB_GATEWAY.
network_name Nome della rete Virtual Private Cloud (VPC) associata al gateway.

Metriche disponibili

Per la risorsa Gateway sono disponibili le seguenti metriche. Tutte le metriche hanno il prefisso networkservices.googleapis.com/https/.

Tipo di metrica Nome visualizzato Tipo, tipo, unità Descrizione
networkservices.googleapis.com/https/request_count Conteggio delle richieste DELTA, INT64, 1 Numero totale di richieste elaborate dal proxy.
networkservices.googleapis.com/https/request_bytes_count Byte di richiesta DELTA, INT64, By Numero totale di byte ricevuti nelle richieste.
networkservices.googleapis.com/https/response_bytes_count Byte di risposta DELTA, INT64, By Numero totale di byte inviati nelle risposte.
networkservices.googleapis.com/https/total_latencies Latenze totali DELTA, DIST, ms Il tempo trascorso dalla ricezione del primo byte di una richiesta all'invio dell'ultimo byte della risposta.
networkservices.googleapis.com/https/backend_latencies Latenze di backend DELTA, DIST, ms Tempo trascorso dall'invio della richiesta al backend fino alla ricezione del primo byte della risposta.

Crea una dashboard personalizzata

Per creare una dashboard personalizzata per visualizzare le prestazioni e le tendenze del traffico delle tue istanze di Secure Web Proxy, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Dashboard.

    Accedi a Dashboard

  2. Fai clic su Crea dashboard personalizzata.

  3. Fai clic su Aggiungi widget, quindi seleziona l'opzione del grafico A linee.

  4. Nel campo Metrica, cerca networkservices.googleapis.com/https/request_count.

  5. Nel campo Filtro, puoi filtrare in base a gateway_id se hai configurato più istanze di Secure Web Proxy.

  6. Nella sezione Aggregazione, imposta il Periodo di allineamento su 1 minute e seleziona rate per Allineatore.

    In questo modo, i dati delle richieste non elaborate vengono convertiti in una frequenza di richieste al secondo, semplificando la visualizzazione e l'analisi delle tendenze del traffico coerenti nel tempo.

  7. Per salvare il widget, fai clic su Applica.

Passaggi successivi