<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
<ph type="x-smartling-placeholder">
<ph type="x-smartling-placeholder">Version 1.6.0
Écrire des entrées dans les journaux Cloud Logging
Ce contenu fournit des informations de référence pour configurer et utiliser cette extension.
Prérequis
Avant d'utiliser cette extension à partir d'un proxy d'API, vous devez:
Dans IAM, attribuez le rôle Logging > Rédacteur de journaux au membre du projet qui représentera votre extension du système Cloud 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 la journalisation des rôles, consultez le guide du contrôle des accès.
Générez une clé pour le compte de service à l'aide de la console Google Cloud.
Utilisez le contenu du fichier JSON de clé obtenu lors de l'ajout et de la configuration de l'extension à l'aide de la documentation de référence de configuration.
Cette extension peut être appelée par une règle ExtensionAccroche située dans PostClientFlow.
Si vous souhaitez utiliser la règle ExtensionAccroche pour appeler cette extension à partir d'un
PostClientFlow, assurez-vous que l'option features.allowExtensionsInPostClientFlow
est défini sur true
dans votre organisation.
Si vous êtes un client Apigee Edge for 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 la API Update Organization Properties pour définir l'option
features.allowExtensionsInPostClientFlow
surtrue
.
À propos de Cloud Logging
<ph type="x-smartling-placeholder">Cloud Logging fait partie du suite Operations. Elle inclut un espace de stockage pour les journaux, une interface utilisateur appelée et une API pour gérer les journaux par programmation. Avec Cloud Logging, vous pouvez : lire et écrire des entrées de journal, rechercher et filtrer vos journaux, exporter vos journaux, créer des métriques basées sur les journaux.
L'extension Cloud Logging écrit actuellement des entrées dans le journal. Pour en savoir plus, consultez la documentation Cloud Logging.
Exemples
Les exemples suivants montrent comment configurer la compatibilité avec Cloud Logging les actions de l'extension à l'aide de la règle ExtensionCall.
Journal global
La stratégie suivante écrit le message This is a test
dans un journal appelé
example-log
dans la ressource Cloud Global. En utilisation réelle, vous devriez probablement
faire en sorte que le message soit contenu dans une variable de flux dont la valeur est définie 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>cloud-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 des informations de référence pour configurer et utiliser cette extension. Pour savoir comment configurer une extension à l'aide de la console Apigee, consultez Ajouter et configurer une extension
Actions
<ph type="x-smartling-placeholder">
log
Écrit un message dans le journal.
Cette action écrit une entrée de journal Cloud Logging. Les entrées de journal sont composées de métadonnées
et les données d'entrée. Pour en savoir plus sur les entrées de journal, consultez la
Référence d'entrée :
Pour en savoir plus sur le contenu de la propriété metadata
, consultez
LogEntry
dans la documentation Cloud Logging.
Syntaxe
<Action>log</Action>
<Input><![CDATA[{
"logName" : "cloud-log-name-to-use",
"metadata" : JSON-structured-metadata,
"message" : "data-to-log-as-entry"
}]]></Input>
Exemple: chaîne
<Action>log</Action>
<Input><![CDATA[{
"logName" : "example-log",
"metadata" : { "resource" : { "type" : "global" } },
"message": "This is a test."
}]]></Input>
Exemple: JSON
<Action>log</Action>
<Input><![CDATA[{
"logName" : "example-log",
"metadata" : { "resource" : { "type" : "global" } },
"message" : { "info" : "This is a test." }
}]]></Input>
Paramètres de requête
Paramètre | Description | Type | Par défaut | Obligatoire |
---|---|---|---|---|
logName |
Nom du journal auquel appartient cette entrée. | Chaîne | Aucun | Oui |
metadata |
Métadonnées sur l'entrée de journal. Pour en savoir plus sur la configuration de type et labels dans metadata , et pour connaître les options correspondantes, consultez MonitoredResource. |
JSON | Aucun | Non |
message |
Données à utiliser comme valeur pour cette entrée de journal. Vous pouvez spécifier une chaîne simple ou utiliser JSON pour consigner un message plus structuré. | Chaîne ou JSON | Aucun | Oui |
Réponse
None
si le message a été écrit dans le journal Sinon, la requête renverra une erreur. Consultez également Déboguer une extension.
Documentation de référence sur la configuration
Procédez comme suit lorsque vous configurez et déployez cette extension afin de l'utiliser dans des proxys d'API.
Propriétés courantes des extensions
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 des valeurs pour les propriétés de configuration suivantes, spécifiques à cette extension.
Propriété | Description | Par défaut | Obligatoire |
---|---|---|---|
projectId |
ID du projet Google Cloud dans lequel les journaux doivent être créés. | Aucun | Oui |
credentials |
Lorsqu'il est 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. | Aucun | Oui |