Google Cloud Logging 扩展程序

<ph type="x-smartling-placeholder"></ph> 您正在查看 Apigee Edge 文档。
转到 Apigee X 文档
信息

<ph type="x-smartling-placeholder">

版本 1.6.1

。 <ph type="x-smartling-placeholder">

将条目写入 Cloud Logging 日志。

本文提供了配置和使用此扩展程序的参考信息。

前提条件

通过 API 代理使用此扩展程序之前,您必须:

  1. 在 IAM 中,分配 Logging >Logs Writer 角色添加到项目成员,该成员将代表您的 Cloud Logging 系统扩展程序。如需了解如何授予角色,请参阅为服务账号授予特定资源的角色。 如需详细了解日志记录角色,请参阅访问权限控制指南

  2. 使用 Google Cloud 控制台为服务账号生成密钥

  3. 在通过配置参考添加和配置扩展程序时,使用所生成的密钥 JSON 文件的内容。

此扩展程序支持由位于 PostClientFlow 中的 ExtensionCallout 政策调用。 如果您想使用附加信息宣传信息政策通过 PostClientFlow 时,请确保 features.allowExtensionsInPostClientFlow 标志 设为“true”。

  • 如果您是适用于公有云的 Apigee Edge 的客户,则必须联系 Apigee Edge 支持团队,以确保 贵组织中的 features.allowExtensionsInPostClientFlow 标志已设置为 true

  • 如果您是适用于私有云的 Apigee Edge 客户,请使用 更新组织属性 API 将 features.allowExtensionsInPostClientFlow 标志设置为 true

。 <ph type="x-smartling-placeholder">

Cloud Logging 简介

<ph type="x-smartling-placeholder">

Cloud Logging 是 Google Cloud 的 运维套件。它包含日志存储空间,称为“日志”的界面 以及一个用于以编程方式管理日志的 API。借助 Cloud Logging,您可以 读取和写入日志条目、搜索和过滤日志、导出日志以及 创建基于日志的指标

目前,Cloud Logging 扩展程序会将条目写入日志。如需了解详情, 请参阅 Cloud Logging 文档

示例

以下示例说明了如何配置对 Cloud Logging 的支持 附加信息操作。

全局日志

以下政策会将 This is a test 消息写入名为 Cloud Global 资源中的 example-log。在实际使用中,您可能会想 让消息包含在您在别处设置其值的流变量中 。

<?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>

本文提供了配置和使用此扩展程序的参考信息。 如需了解使用 Apigee 控制台配置扩展程序的步骤,请参阅 添加和配置扩展程序

操作

<ph type="x-smartling-placeholder">

log

向日志写入一条消息。

此操作会写入 Cloud Logging 日志条目。日志条目包含元数据 和条目数据。如需详细了解日志条目,请参阅 条目参考。 有关 metadata 属性的内容,请参阅 LogEntry 对象。

语法

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "cloud-log-name-to-use",
  "metadata" : JSON-structured-metadata,
  "message" : "data-to-log-as-entry"
}]]></Input>

示例:字符串

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message": "This is a test."
}]]></Input>

示例:JSON

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message" : { "info" :  "This is a test." }
}]]></Input>

请求参数

参数 说明 类型 默认 必填
logName 此条目所属的日志的名称。 字符串
metadata 日志条目的元数据。
如需详细了解如何在 metadata 中设置 typelabels,请参阅 MonitoredResource
JSON
message 要用作此日志条目值的数据。您可以指定简单的字符串或使用 JSON 来记录结构更清晰的消息。 字符串或 JSON

响应

如果消息已写入日志,则为 None。否则,请求将返回错误。另请参阅调试扩展程序

配置参考文档

在配置和部署此扩展程序以供在 API 代理中使用时,请使用以下代码。

常见的扩展属性

每个扩展程序都有以下属性。

属性 说明 默认 必需
name 您为扩展程序配置此名称。
packageName Apigee Edge 提供的扩展包的名称。
version 配置扩展程序所用的扩展程序软件包的版本号。
configuration 特定于您要添加的附加信息的配置值。请参阅此扩展程序软件包的属性

此扩展程序软件包的属性

为此扩展程序的以下配置属性指定值。

属性 说明 默认 必填
projectId 应在其中创建日志的 Google Cloud 项目的 ID。
credentials 在 Apigee Edge 控制台中输入时,这是服务账号密钥文件的内容。通过 Management API 发送时,此值为根据服务账号密钥文件生成的 base64 编码值。