Vous consultez la documentation d'Apigee Edge.
Consultez la
documentation Apigee X. en savoir plus
Version 1.3.7
Écrire des entrées dans les journaux Stackdriver Logging
Ce contenu fournit une documentation de référence sur la configuration et l'utilisation de cette extension.
Conditions préalables
Avant d'utiliser cette extension à partir d'un proxy d'API, vous devez:
Dans IAM, attribuez les rôles Logging > Rédacteur de journaux et Logging > Lecteur de journaux au membre du projet qui représentera votre extension auprès du système Stackdriver Logging. Pour savoir comment attribuer des rôles, consultez Attribuer des rôles à un compte de service pour des ressources spécifiques. Pour en savoir plus sur les rôles de journalisation, consultez le guide du contrôle des accès.
Utilisez la console GCP pour générer une clé pour le compte de service.
Utilisez le contenu du fichier JSON de clé obtenu lorsque vous ajoutez et configurez l'extension à l'aide des documents de référence de configuration.
Cette extension peut être appelée par une règle ExtensionCallout située dans PostClientFlow.
Si vous souhaitez utiliser la règle ExtensionCallout pour appeler cette extension à partir d'un PostClientFlow, assurez-vous que l'indicateur features.allowExtensionsInPostClientFlow
est défini sur true
dans votre organisation.
Si vous êtes un client Apigee Edge pour Public Cloud, vous devez contacter l'assistance Apigee Edge pour vous assurer que l'option
features.allowExtensionsInPostClientFlow
est définie surtrue
dans votre organisation.Si vous êtes un client Apigee Edge pour Private Cloud, utilisez l'API Mettre à jour les propriétés de l'organisation pour définir l'option
features.allowExtensionsInPostClientFlow
surtrue
.
À propos de Stackdriver Logging
Stackdriver Logging fait partie de la suite de produits Stackdriver de Google Cloud Platform (GCP). Il inclut un espace de stockage pour les journaux, une interface utilisateur appelée "visionneuse de journaux" et une API permettant une gestion automatisée des journaux. Avec Stackdriver Logging, vous pouvez lire et écrire des entrées de journal, rechercher et filtrer des journaux, les exporter et créer des métriques basées sur les journaux.
Cette extension écrit actuellement des entrées dans le journal. Pour en savoir plus, consultez la documentation de Stackdriver Logging.
Samples
Les exemples suivants montrent comment configurer la compatibilité avec les actions d'extension Stackdriver Logging à l'aide de la règle ExtensionCallout.
Journal global
La stratégie suivante écrit le message "This is a test" dans un journal appelé "example-log" dans la ressource globale de Stackdriver. En pratique, le message devrait être contenu dans une variable de flux dont vous avez défini la valeur ailleurs dans le proxy d'API.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Logging-Extension">
<DisplayName>Logging Connector</DisplayName>
<Connector>stackdriver-extension-sample</Connector>
<Action>log</Action>
<Input><![CDATA[{
"logName": "example-log",
"metadata": {
"resource": {
"type": "global",
"labels": {
"project_id": "my-test"
}
}
},
"message": "This is a test"
}]]></Input>
</ConnectorCallout>
Ce contenu fournit une documentation de référence sur la configuration et l'utilisation de cette extension. Pour savoir comment configurer une extension à l'aide de la console Apigee, consultez Ajouter et configurer une extension.
Actions
log
Écrit un message dans le journal.
Cette action écrit une entrée de journal Stackdriver. Les entrées de journal sont constituées de métadonnées et des données d'entrée. Pour en savoir plus sur les entrées de journal, consultez la documentation de référence sur les entrées. Pour en savoir plus sur le contenu de la propriété metadata
, consultez l'objet LogEntry dans la documentation de Stackdriver Logging.
Syntaxe
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : JSON-structured-metadata,
"message" : "data-to-log-as-entry"
}]]></Input>
Exemple
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : { "resource" : { "type" : "global" } },
"message" : "data-to-log-as-entry"
}]]></Input>
Paramètres de requête
Paramètres | Description | Type | Par défaut | Obligatoire |
---|---|---|---|---|
logName | Nom du journal auquel cette entrée appartient. | Chaîne | Aucune | Oui. |
métadonnées | Métadonnées sur l'entrée de journal. Pour en savoir plus sur la définition de type et labels et sur les options disponibles dans metadata , consultez la page MonitoredResource. |
JSON | Aucune | Non. |
message | Données à utiliser comme valeur pour cette entrée de journal. | Chaîne | Aucune | Oui. |
Réponse
La valeur "None" si le message a été écrit dans le journal. Sinon, la requête renverra une erreur. Consultez également la section Déboguer une extension.
Documentation de référence sur la configuration
Utilisez le code suivant lorsque vous configurez et déployez cette extension pour l'utiliser dans des proxys d'API.
Propriétés d'extension courantes
Les propriétés suivantes sont présentes pour chaque extension.
Propriété | Description | Par défaut | Obligatoire |
---|---|---|---|
name |
Nom que vous attribuez à cette configuration de l'extension. | Aucune | Oui |
packageName |
Nom du package d'extension tel qu'indiqué par Apigee Edge. | Aucune | Oui |
version |
Numéro de version du package d'extension à partir duquel vous configurez une extension. | Aucune | Oui |
configuration |
Valeur de configuration spécifique à l'extension que vous ajoutez. Consultez Propriétés de ce package d'extension. | Aucune | Oui |
Propriétés de ce package d'extension
Spécifiez les valeurs des propriétés de configuration suivantes spécifiques à cette extension.
Propriété | Description | Par défaut | Obligatoire |
---|---|---|---|
projectId | ID du projet GCP dans lequel les journaux doivent être créés. | Aucune | Oui. |
identifiants | Une fois saisi dans la console Apigee Edge, il s'agit du contenu du fichier de clé de votre compte de service. Lorsqu'elle est envoyée via l'API de gestion, il s'agit d'une valeur encodée en base64 générée à partir du fichier de clé du compte de service. | Aucune | Oui. |