Google Stackdriver Logging 擴充功能

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

1.2.1 版本

將項目寫入 Stackdriver Logging 記錄。

這項內容提供設定與使用這項擴充功能的參考資源。

必要條件

如要透過 API Proxy 使用這個擴充功能,您必須:

  1. 在 IAM 中指派 Logging >專案成員的記錄寫入者權限,該成員將代表 Stackdriver Logging 系統的擴充功能。如需授予角色的操作說明,請參閱將角色授予特定資源的服務帳戶。 如要進一步瞭解記錄角色,請參閱存取權控制指南

  2. 使用 GCP 主控台為服務帳戶產生金鑰

  3. 使用設定參考資料新增及設定擴充功能時,請使用產生的金鑰 JSON 檔案內容。

關於 Stackdriver Logging

Stackdriver Logging 是 Google Cloud Platform (GCP) 中 Stackdriver 產品套件的一部分,它包括記錄檔儲存空間、名為「記錄檢視器」的使用者介面,以及透過程式化方式管理記錄檔的 API。您可以使用 Stackdriver Logging 讀取及寫入記錄項目、搜尋及篩選記錄檔、匯出記錄檔,以及建立記錄指標。

這項擴充功能目前會將項目寫入記錄檔。

詳情請參閱 Stackdriver Logging 說明文件

範例

以下範例說明如何透過擴充功能摘要政策,為 Stackdriver Logging 擴充功能動作設定支援。

全域記錄檔

下列政策會寫入「這是測試」訊息複製到 Stackdriver Global 資源中的 example-log 記錄檔。在實際使用時,您可能會將訊息包含在流程變數中,而該變數的值您在 API Proxy 的其他位置設定。

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

這項內容提供設定與使用這項擴充功能的參考資源。如需使用 Apigee 控制台設定擴充功能的步驟,請參閱新增及設定擴充功能

動作

log

將訊息寫入記錄。

這項操作會寫入 Stackdriver 記錄項目。記錄項目包含中繼資料和項目資料。如要進一步瞭解記錄項目,請參閱項目參考資料。如要瞭解 metadata 屬性的內容,請參閱 Stackdriver Logging 說明文件中的 LogEntry 物件。

語法

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "stackdriver-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 中設定 typelabels 的選項及選項,請參閱 MonitoredResource
JSON 無。 編號
訊息 要做為這個記錄項目值的資料。您可以指定簡易字串,或使用 JSON 記錄更結構化的訊息。 字串或 JSON 無。 是。

回應

None。否則,要求會傳回錯誤。另請參閱對擴充功能偵錯

設定參考資料

設定及部署這項擴充功能以用於 API Proxy 時,請使用下列指令。

常見擴充功能屬性

每個擴充功能都有下列屬性。

屬性 說明 預設 必要
name 您要為這項擴充功能設定的名稱。 相容
packageName Apigee Edge 指定的擴充功能套件名稱。 相容
version 擴充功能的擴充功能套件版本號碼。 相容
configuration 您要新增的擴充功能專屬的設定值。請參閱「這個擴充功能套件的屬性」一文 相容

這個擴充功能套件的屬性

指定這個擴充功能專用的下列設定屬性值。

屬性 說明 預設 必填
專案 ID 應建立記錄檔的 GCP 專案 ID。 無。 是。
憑證 您在 Apigee Edge 控制台中輸入的服務帳戶金鑰檔案內容。透過 Management API 傳送時,這是從服務帳戶金鑰檔案產生的 Base64 編碼值。 無。 是。