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 la tracciabilità distribuita per osservare i cicli di vita delle richieste.

Log

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

  • Monitoraggio e conformità

    • Garantisci la conformità alle normative, migliora la sicurezza della rete e fornisci visibilità sul traffico web in uscita inviato a destinazioni esterne consentite.
    • Acquisisci preziosi livelli di controllo e visibilità sul traffico dei carichi di lavoro.
    • Ottieni informazioni critiche per un monitoraggio efficace del Security Operations Center (SOC).
    • Utilizza i log per rilevare e monitorare gli eventi di sicurezza e rispondere in modo proattivo alle minacce.
  • Deployment e configurazione

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

Tipi di log

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

  • Cloud Audit Logs: acquisisci le modifiche amministrative e l'accesso ai dati delle tue risorse Secure Web Proxy. Questi log includono:

  • Log delle transazioni proxy: acquisisci i dettagli delle richieste web specifiche elaborate da Secure Web Proxy. Questi log forniscono informazioni sul flusso di traffico, sull'applicazione delle norme e sul rendimento della tua istanza di Secure Web Proxy.

Configura avvisi log

Puoi configurare gli 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, vedi Configurazione degli avvisi basati su log.

Di seguito sono riportati alcuni esempi di query che puoi utilizzare per configurare avvisi basati sui log per Secure Web Proxy:

Avviso per il traffico negato da una policy 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 tuo progettoGoogle Cloud di destinazione.

Avviso per il traffico negato da una regola 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 tua policy Secure Web Proxy

Avviso per richieste a 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 tuo 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ù, vedi 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 policy 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, e poi gli ha consentito di procedere al sito web di destinazione. I nomi delle norme e delle regole sono swp-policy e allow-port-443, rispettivamente.

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 nel criterio 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 "AVVISO"
logName "projects/gcp-1768/logs/networkservices.googleapis.com%2Fgateway_requests"
receiveTimestamp "2024-02-15T16:55:04.456901833Z"

Tracciamento distribuito con Cloud Trace

Secure Web Proxy supporta la tracciabilità delle richieste distribuite integrata con Trace.

Correlazione log-traccia

Ogni voce di log delle transazioni 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 Google Cloud progetto
  • TRACE_ID: ID traccia a 128 bit (esadecimale a 32 caratteri) dal client o dallo span di traccia. Ad esempio, 4bf92f3577b34da6a3ce929d0e0e4736.

Puoi utilizzare questo ID traccia per correlare le voci di log con gli intervalli di traccia corrispondenti:

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

Per maggiori informazioni, 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 gateway di 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 RegioneGoogle Cloud in cui viene 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, 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 richiesta DELTA, INT64, By Il numero totale di byte ricevuti nelle richieste.
networkservices.googleapis.com/https/response_bytes_count Byte di risposta DELTA, INT64, By Il numero totale di byte inviati nelle risposte.
networkservices.googleapis.com/https/total_latencies Latenze totali DELTA, DIST, ms Il tempo che intercorre tra la ricezione del primo byte di una richiesta e l'invio dell'ultimo byte della risposta.
networkservices.googleapis.com/https/backend_latencies Latenze backend DELTA, DIST, ms Tempo che intercorre tra l'invio della richiesta al backend e la ricezione del primo byte della risposta.

Creare una dashboard personalizzata

Per creare una dashboard personalizzata per visualizzare le tendenze di rendimento e traffico delle 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 allineamento su 1 minute e seleziona rate per Allineatore.

    In questo modo, i dati delle richieste non elaborate vengono convertiti in un tasso di richieste al secondo, il che semplifica la visualizzazione e l'analisi delle tendenze del traffico nel tempo.

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

Passaggi successivi