Journaux, métriques et traces

Ce document explique comment Secure Web Proxy enregistre ses données opérationnelles, comment utiliser les métriques de l'API Cloud Monitoring pour analyser les performances du proxy et comment utiliser le traçage distribué pour observer les cycles de vie des requêtes.

Journaux

Secure Web Proxy utilise Cloud Logging pour vous permettre de capturer des informations et d'effectuer diverses tâches dans les domaines clés suivants :

  • Surveillance et conformité

    • Appliquez la conformité aux réglementations, améliorez la sécurité réseau et offrez une visibilité sur le trafic Web sortant envoyé aux destinations externes autorisées.
    • Bénéficiez de niveaux de contrôle et de visibilité précieux sur le trafic des charges de travail.
    • Obtenez des insights essentiels pour une surveillance efficace du centre des opérations de sécurité (SOC).
    • Utilisez les journaux pour détecter et suivre les événements de sécurité afin de répondre aux menaces de manière proactive.
  • Déploiement et configuration

    • Suivez la configuration initiale de votre infrastructure, la création de comptes utilisateur et les modifications de configuration.
    • Surveillez les erreurs potentielles pour assurer un déploiement fluide et sécurisé.
    • Comprenez l'impact des ajustements de réglage des règles et optimisez votre protection.

Types de journaux

Secure Web Proxy utilise la journalisation pour capturer et stocker les types de journaux suivants :

  • Cloud Audit Logs : capturez les modifications administratives et l'accès aux données de vos ressources Secure Web Proxy. Ces journaux incluent les éléments suivants :

  • Journaux de transactions du proxy : capturent des détails sur des requêtes Web spécifiques traitées par votre proxy Web sécurisé. Ces journaux fournissent des insights sur le flux de trafic, l'application des règles et les performances de votre instance Secure Web Proxy.

Configurer des alertes de journaux

Vous pouvez configurer des alertes pour les événements que Secure Web Proxy écrit dans Logging, tels que les refus de trafic ou les correspondances de règles spécifiques. Pour obtenir des instructions générales sur la configuration de ces alertes, consultez Configurer des alertes basées sur les journaux.

Voici quelques exemples de requêtes que vous pouvez utiliser pour configurer des alertes basées sur les journaux pour Secure Web Proxy :

Alerte pour le trafic refusé par une règle Secure Web Proxy

Utilisez la requête suivante pour déclencher une alerte lorsque votre stratégie Secure Web Proxy refuse une requête :

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

Remplacez PROJECT_ID par l'ID de votre projet cibleGoogle Cloud .

Alerte pour le trafic refusé par une règle Secure Web Proxy

Utilisez la requête suivante pour déclencher une alerte lorsqu'une règle Secure Web Proxy spécifique (par exemple, my-specific-deny-rule) refuse une requête :

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$"

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet Google Cloud cible.
  • REGION : région de votre instance Secure Web Proxy
  • POLICY_NAME : nom de votre stratégie Secure Web Proxy

Alerte pour le trafic limité par une règle de limitation du débit du service

Utilisez la requête suivante pour déclencher une alerte lorsqu'une règle de limitation du débit de service limite une requête :

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

Remplacez PROJECT_ID par l'ID de votre projetGoogle Cloud cible.

Alerte pour les requêtes à latence élevée

Utilisez la requête suivante pour être averti lorsque les requêtes dépassent une certaine latence, par exemple cinq secondes :

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

Remplacez PROJECT_ID par l'ID de votre projet cibleGoogle Cloud .

Afficher les journaux dans Cloud Logging

  1. Dans la console Google Cloud , accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

  2. Sélectionnez votre projet Google Cloud .

  3. Utilisez les menus déroulants pour sélectionner la ressource networkservices.googleapis.com/Gateway ou votre instance Secure Web Proxy.

Pour en savoir plus, consultez la page Utiliser l'explorateur de journaux.

Exemples d'entrées de journal

Le proxy Web sécurisé génère des entrées de journal détaillées chaque fois qu'il traite une demande, ce qui permet de suivre ses actions et les règles appliquées. Les exemples suivants montrent comment fonctionnent les journaux Secure Web Proxy.

Exemple d'entrée de journal d'autorisation

L'entrée de journal suivante montre que l'instance Secure Web Proxy a intercepté et inspecté le trafic HTTPS pour www.example.com, puis l'a autorisé à accéder au site Web de destination. Les noms de la stratégie et de la règle sont respectivement swp-policy et allow-port-443.

Champ Valeurs
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"

Exemple d'entrée de journal de refus

Cette entrée de journal indique que l'instance Secure Web Proxy a inspecté le trafic pour www.example.com:443 et a refusé la requête HTTPS en raison de la règle default_denied de la stratégie Secure Web Proxy.

Champ Valeurs
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"

Exemple d'entrée de journal d'une règle de limitation du débit d'un service

L'entrée de journal suivante montre que l'instance Secure Web Proxy a limité une requête, car le client a dépassé le RateLimitPolicy (nommé rl-egress-policy) sous le rl_default_rpm_limit RateLimitBucket.

Champ Valeurs
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"

Utiliser le traçage distribué avec Cloud Trace

Secure Web Proxy est compatible avec le traçage de requêtes distribué intégré à Trace.

Corrélation entre les journaux et les traces

Chaque entrée de journal de transaction de proxy écrite dans Logging inclut un champ trace contenant la chaîne de ressource de trace Google Cloud  :

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

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet Google Cloud
  • TRACE_ID : ID de trace 128 bits (32 caractères hexadécimaux) de votre client ou de votre segment de trace. Exemple : 4bf92f3577b34da6a3ce929d0e0e4736.

Vous pouvez utiliser cet ID de trace pour mettre en corrélation les entrées de journal avec leurs étendues de trace correspondantes :

  • Des journaux aux traces : dans l'explorateur de journaux, cliquez sur le champ trace d'une entrée de journal, puis sélectionnez Afficher les détails des traces pour ouvrir la cascade de requêtes complète dans Trace.
  • Des traces aux journaux : dans Trace, cliquez sur Afficher les journaux dans le volet Détails de la trace pour afficher tous les journaux de transactions de proxy associés à la trace.

Pour en savoir plus, consultez Traçage distribué avec Trace.

Métriques

Les métriques de l'API Cloud Monitoring vous aident à observer les performances, l'état et l'utilisation de vos instances Secure Web Proxy.

Ressource surveillée

Les métriques de Secure Web Proxy sont exportées sous la ressource surveillée suivante :

  • networkservices.googleapis.com/Gateway : représente une instance de passerelle Secure Web Proxy.

Le tableau suivant décrit les ressources disponibles pour networkservices.googleapis.com/Gateway. Vous pouvez utiliser ces ressources pour filtrer et agréger vos données de surveillance.

Libellé Description
resource_container ID du projet associé à l'instance de passerelle Secure Web Proxy.
location Google Cloud Région dans laquelle la passerelle est déployée.
gateway_id Nom unique de l'instance de passerelle Secure Web Proxy.
gateway_type Type de passerelle, défini sur SECURE_WEB_GATEWAY.
network_name Nom du réseau cloud privé virtuel (VPC) associé à la passerelle.

Métriques disponibles

Les métriques suivantes sont disponibles pour la ressource Gateway. Toutes les métriques sont précédées du préfixe networkservices.googleapis.com/https/.

Type de métrique Nom à afficher Genre, Type, Unité Description
networkservices.googleapis.com/https/request_count Nombre de requêtes DELTA, INT64, 1 Nombre total de requêtes traitées par le proxy.
networkservices.googleapis.com/https/request_bytes_count Octets de requête DELTA, INT64, By Nombre total d'octets reçus dans les requêtes.
networkservices.googleapis.com/https/response_bytes_count Octets de réponse DELTA, INT64, By Nombre total d'octets envoyés dans les réponses.
networkservices.googleapis.com/https/total_latencies Total des latences DELTA, DIST, ms Temps écoulé entre la réception du premier octet d'une requête et l'envoi du dernier octet de la réponse.
networkservices.googleapis.com/https/backend_latencies Latences de backend DELTA, DIST, ms Temps écoulé entre l'envoi de la requête au backend et la réception du premier octet de la réponse.

Créer un tableau de bord personnalisé

Pour créer un tableau de bord personnalisé permettant de visualiser les performances et les tendances de trafic de vos instances Secure Web Proxy, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page Tableaux de bord.

    Accéder à la page Tableaux de bord

  2. Cliquez sur Créer un tableau de bord personnalisé.

  3. Cliquez sur Ajouter un widget, puis sélectionnez l'option de graphique Courbes.

  4. Dans le champ Métrique, recherchez networkservices.googleapis.com/https/request_count.

  5. Dans le champ Filtrer, vous pouvez filtrer par gateway_id si vous avez configuré plusieurs instances Secure Web Proxy.

  6. Dans la section Agrégation, définissez la période d'alignement sur 1 minute et sélectionnez rate pour l'aligneur.

    Cela convertit les données de requête brutes en un taux de requêtes par seconde, ce qui facilite l'affichage et l'analyse des tendances de trafic cohérentes au fil du temps.

  7. Pour enregistrer le widget, cliquez sur Appliquer.

Étapes suivantes