Accéder aux journaux dans Cloud Logging

Les pages Anthos Service Mesh fournissent des liens vers deux types de journaux différents dans Cloud Logging : les journaux d'erreurs et les journaux de trafic.

Accéder aux journaux d'erreurs

Pour afficher les journaux d'erreurs d'un service pendant une période donnée, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Anthos Service Mesh.

    Accéder à la page Anthos Service Mesh

  2. Sous Services, sélectionnez le nom du service que vous souhaitez inspecter.

  3. Accédez à la page Diagnostic.

  4. Spécifiez une période dans le menu déroulant Période ou définissez une période personnalisée avec la chronologie.

  5. Dans l'angle supérieur droit de la fenêtre, cliquez sur Ouvrir dans Logging.

Accéder aux journaux de trafic

Pour afficher les journaux de trafic d'un service pendant une période donnée ou pour accéder aux journaux dans Istio, procédez comme suit :

  1. Dans Google Cloud Console, accédez à la page Anthos Service Mesh.

    Accéder à la page Anthos Service Mesh

  2. Sous Services, sélectionnez le nom du service que vous souhaitez inspecter.

  3. Accédez à la page Métriques.

  4. Spécifiez une période dans le menu déroulant Période ou définissez une période personnalisée avec la chronologie.

  5. Sous  Sélectionner une option de filtrage, et cliquez sur Afficher les journaux du trafic.

Le journal de trafic est nommé server-accesslog-stackdriver et est associé à la ressource surveillée k8s_container. Le journal de trafic contient les informations suivantes :

  • Les propriétés des requêtes HTTP, telles que l'ID, l'URL, la taille, la latence et les en-têtes courants

  • Des informations sur les charges de travail source et de destination, telles que le nom, l'espace de noms, l'identité et les libellés courants

  • Si le traçage est activé, des informations de trace telles que l'échantillonnage, l'ID de trace et l'ID de période

Voici un exemple d'entrée de journal :

{
  insertId: "1awb4hug5pos2qi"
  httpRequest: {
    requestMethod: "GET"
    requestUrl: "YOUR-INGRESS/productpage"
    requestSize: "952"
    status: 200
    responseSize: "5875"
    remoteIp: "10.8.0.44:0"
    serverIp: "10.56.4.25:9080"
    latency: "1.587232023s"
    protocol: "http"
  }
  resource: {
    type: "k8s_container"
    labels: {
      location: "us-central1-a"
      project_id: "YOUR-PROJECT"
      pod_name: "productpage-v1-76589d9fdc-ptnt9"
      cluster_name: "YOUR-CLUSTER-NAME"
      container_name: "productpage"
      namespace_name: "default"
    }
  }
  timestamp: "2020-04-28T19:55:21.056759Z"
  severity: "INFO"
  labels: {
    destination_principal: "spiffe://cluster.local/ns/default/sa/bookinfo-productpage"
    response_flag: "-"
    destination_service_host: "productpage.default.svc.cluster.local"
    source_app: "istio-ingressgateway"
    service_authentication_policy: "MUTUAL_TLS"
    source_name: "istio-ingressgateway-5ff85d8dd8-mwplb"
    mesh_uid: "YOUR-MESH-UID"
    request_id: "021ce752-9001-4ac6-b6d6-3b15f5d3632"
    destination_namespace: "default"
    source_principal:  "spiffe://cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account"
    destination_workload: "productpage-v1"
    destination_version: "v1"
    source_namespace: "istio-system"
    source_workload: "istio-ingressgateway"
    destination_name: "productpage-v1-76589d9fdc-ptnt9"
    destination_app: "productpage"
  }
  trace: "projects/YOUR-PROJECT/traces/d4197f59b7a43e3aeff3571bac99d536"
  receiveTimestamp: "2020-04-29T03:07:14.362416217Z"
  spanId: "43226343ca2bb2b1"
  traceSampled: true
  logName: "projects/YOUR-PROJECT/logs/server-accesslog-stackdriver"
  receiveTimestamp: "2020-04-28T19:55:32.185229100Z"
}

Étapes suivantes