Personalized Service Health consigne les événements d'état des services dans Cloud Logging. Il enregistre toutes les mises à jour de la description, de la pertinence ou de l'état de l'événement en tant que journal distinct.
Ce document explique comment afficher, exporter et stocker les journaux Service Health.
Avant de commencer
Vérifiez que la facturation est activée pour votre Google Cloud projet.
- Activez l'API Service Health pour le projet dont vous souhaitez afficher, exporter ou stocker les journaux.
- Accédez aux journaux Service Health.
Schéma des journaux
Consultez la référence du schéma des journaux pour connaître les champs que vous pouvez définir dans votre requête.
Afficher les journaux Service Health
Pour afficher les journaux Service Health :
- Accédez à la Google Cloud console.
- Sélectionnez Operations > Logging > Logs Explorer (Opérations > Journalisation > Explorateur de journaux).
- Sélectionnez un Google Cloud projet en haut de la page.
Dans le menu déroulant Log name (Nom du journal), sélectionnez Service Health.


Une liste de journaux pour
type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLogs'affiche.Développez une entrée de journal pour afficher les détails de l'événement. L'exemple suivant montre un événement typique.
"insertId":"1pw1msgf6a3zc6", "timestamp":"2022-06-14T17:17:55.722035096Z", "receiveTimestamp":"2022-06-14T17:17:55.722035096Z", "logName":"projects/PROJECT_ID/logs/servicehealth.googleapis.com%2Factivity", "resource":{ "type":"servicehealth.googleapis.com/Event", "labels":{ "resource_container":"797731824162", "location":"global", "event_id":"U4AqrjwFQYi5fFBmyAX-Gg" } } "labels":{ "new_event":"true" "updated_fields": "[]" }, "jsonPayload":{ "@type":"type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLog", "category":"INCIDENT", "title":"We are experiencing a connectivity issue affecting Cloud SQL in us-east1, australia-southeast2.", "description":"We are experiencing an issue with Google Cloud infrastructure components at us-east1, australia-southeast2. Our engineering team continues to investigate the issue. We apologize to all who are affected by the disruption.", "updateTime":"2023-11-14T22:26:40Z", "endTime":"2023-11-14T22:13:20Z", "impactedLocations":"['us-east1','australia-southeast2']", "impactedProducts":"['Google Cloud SQL']", "impactedProductIds":"['hV87iK5DcEXKgWU2kDri']", "nextUpdateTime":"2023-11-14T22:40:00Z", "startTime":"2020-09-13T12:26:40Z", "state":"ACTIVE", "detailedState":"CONFIRMED", "relevance":"RELATED", }
Interroger les journaux Service Health
Vous pouvez utiliser l'explorateur de journaux pour interroger les journaux Service Health. Vous aurez peut-être besoin des références suivantes pour créer votre requête :
Exemples :
| Condition | Requête |
| Obtenir les journaux avec une pertinence d'incident spécifique | jsonPayload.relevance = ("IMPACTED" OR "RELATED")
|
| Combiner plusieurs filtres | jsonPayload.impactedLocations : "us-central1" AND jsonPayload.impactedProducts : "Google Compute Engine" AND jsonPayload.state = "ACTIVE"
|
Exporter les journaux Service Health
Vous pouvez exporter les journaux Service Health vers n'importe quelle destination de récepteur Cloud Logging à l'aide de la Google Cloud console, de l'API ou de gcloud CLI. Pour configurer un récepteur Cloud Logging, consultez Configurer et gérer les récepteurs.
Vous pouvez inclure et exclure les journaux Service Health en configurant les filtres d'inclusion et d'exclusion pour le récepteur.
Lorsque vous définissez le produit ou l'emplacement, utilisez les valeurs disponibles dans Google Cloud Produits et Emplacements.
Agréguer les journaux Service Health au niveau d'un dossier
L'envoi des journaux liés à Service Health de tous les projets d'un dossier vers un projet créé pour les journaux Service Health vous permet d'effectuer des requêtes plus complexes sur ces journaux.
Vous allez créer un récepteur au niveau du dossier pour envoyer tous les journaux liés à Service Health vers un nouveau projet de ce dossier. Procédez comme suit :
Créez un projet dans un dossier. Ce projet est alloué aux journaux Service Health.
gcloud projects create PROJECT_ID --folder FOLDER_IDCréez un récepteur agrégé au niveau du dossier pour les autres projets du dossier.
gcloud logging sinks create SINK_NAME \ SINK_DESTINATION --include-children \ --folder=FOLDER_ID --log-filter="LOG_FILTER"Pour obtenir les journaux de tous les incidents pertinents, définissez la valeur LOG_FILTER sur la valeur suivante :
resource.type=servicehealth.googleapis.com/Event AND jsonPayload.category=INCIDENT AND jsonPayload.relevance!=NOT_IMPACTED AND jsonPayload.@type=type.googleapis.com/google.cloud.servicehealth.logging.v1.EventLogDéfinissez les autorisations pour le compte de service du récepteur.
gcloud projects add-iam-policy-binding PROJECT_ID --member=SERVICE_ACCT_NAME --role=roles/logging.bucketWriter gcloud projects add-iam-policy-binding PROJECT_ID --member=SERVICE_ACCT_NAME --role=roles/logging.logWriter(Facultatif) Si vous ne souhaitez pas envoyer les journaux au récepteur
_Default, créez un bucket de journaux pour les journaux liés à Service Health dans le projet.gcloud logging buckets create BUCKET_ID --location=LOCATION --enable-analytics --asyncSi vous avez créé un bucket de journaux, créez un récepteur pour envoyer ces journaux au bucket.
gcloud logging sinks create SINK_NAME_BUCKET \ logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID \ --project=PROJECT_ID --log-filter="LOG_FILTER"
Interroger les journaux Service Health avec BigQuery
Vous pouvez interroger les journaux envoyés à Cloud Logging à l'aide de BigQuery en procédant comme suit :
- Créer des requêtes SQL.
- Utiliser l'API BigQuery pour transmettre les résultats des requêtes à des systèmes externes.
Procédez comme suit :
Créez un bucket de journaux dans le projet que vous avez créé pour les journaux Service Health.
gcloud logging buckets create BUCKET_ID --location=LOCATION --enable-analytics --asyncActivez Observability Analytics.
gcloud logging buckets update BUCKET_ID --location=LOCATION --enable-analytics --asyncCréez un ensemble de données BigQuery associé au bucket contenant les journaux Service Health.
gcloud logging links create LINK_ID --bucket=BUCKET_ID --location=LOCATIONSi nécessaire, activez l'API BigQuery.
gcloud services enable bigquery.googleapis.com
Vous pouvez maintenant exécuter des requêtes SQL complexes sur BigQuery, par exemple :
| Condition | Requête |
| Obtenir les journaux avec une pertinence d'incident spécifique | gcloud query --use_legacy_sql=false 'SELECT * FROM `PROJECT_ID.LINK_ID._AllLogs` WHERE JSON_VALUE(json_payload["relevance"]) = "IMPACTED"'
|
| Obtenir tous les événements de journal enfant pour un événement parent | gcloud query --use_legacy_sql=false 'SELECT * FROM `PROJECT_ID.LINK_ID._AllLogs` WHERE JSON_VALUE(json_payload["parentEvent"]) = "projects/PROJECT_ID/locations/global/events/EVENT_ID"'
|
Conserver les événements passés
Personalized Service Health offre une conservation limitée des événements.
Si vous devez conserver un enregistrement des événements d'état des services passés au-delà de quelques mois, nous vous recommandons de stocker les journaux Service Health.