Rozszerzenie Google Cloud Logging

Wyświetlasz dokumentację Apigee Edge.
Przejdź do dokumentacji Apigee X.
info

Wersja 1.6.1

Zapisuj wpisy w logach Cloud Logging.

Te treści zawierają informacje o konfigurowaniu i używaniu tego rozszerzenia.

Wymagania wstępne

Zanim zaczniesz korzystać z tego rozszerzenia w proxy interfejsu API, musisz:

  1. W IAM przypisać rolę Logging > Logs Writer (Logowanie > Zapisywanie logów) członkowi projektu, który będzie reprezentować Twoje rozszerzenie w systemie Cloud Logging. Instrukcje przyznawania ról znajdziesz w artykule Przyznawanie ról kontu usługi w przypadku określonych zasobów. Więcej informacji o rolach logowania znajdziesz w przewodniku po kontroli dostępu.

  2. Wygenerować klucz konta usługi w konsoli Google Cloud.

  3. Podczas dodawania i konfigurowania rozszerzenia użyć zawartości wynikowego pliku JSON z kluczem, korzystając z dokumentacji konfiguracji.

To rozszerzenie obsługuje wywoływanie przez zasadę ExtensionCallout znajdującą się w PostClientFlow. Jeśli chcesz użyć zasady ExtensionCallout do wywołania tego rozszerzenia z PostClientFlow, upewnij się, że flaga features.allowExtensionsInPostClientFlow jest ustawiona w Twojej organizacji na true.

  • Jeśli jesteś klientem Apigee Edge w chmurze publicznej, musisz skontaktować się z zespołem pomocy Apigee Edge, aby upewnić się, że flaga features.allowExtensionsInPostClientFlow jest ustawiona w Twojej organizacji na true.

  • Jeśli jesteś klientem Apigee Edge w chmurze prywatnej, użyj interfejsu API Update organization properties aby ustawić flagę features.allowExtensionsInPostClientFlow na true.

Informacje o Cloud Logging

Cloud Logging jest częścią pakietu operacyjnego Google Cloud. Obejmuje on miejsce na logi, interfejs użytkownika o nazwie Eksplorator logów oraz interfejs API do programowego zarządzania logami. Dzięki Cloud Logging możesz odczytywać i zapisywać wpisy w logach, wyszukiwać i filtrować logi, eksportować je oraz tworzyć wskaźniki na podstawie logów.

Rozszerzenie Cloud Logging zapisuje obecnie wpisy w logu. Więcej informacji znajdziesz w dokumentacji Cloud Logging.

Przykłady

Poniższe przykłady pokazują, jak skonfigurować obsługę działań rozszerzenia Cloud Logging za pomocą zasady ExtensionCallout.

Log globalny

Ta zasada zapisuje komunikat This is a test w dzienniku o nazwie example-log w zasobie globalnym Cloud. W praktyce komunikat prawdopodobnie będzie zawarty w zmiennej przepływu, której wartość ustawisz w innym miejscu w proxy interfejsu 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>

Te treści zawierają informacje o konfigurowaniu i używaniu tego rozszerzenia. Instrukcje konfigurowania rozszerzenia za pomocą konsoli Apigee znajdziesz w artykule Dodawanie i konfigurowanie rozszerzenia.

Działania

log

Zapisuje komunikat w logu.

To działanie zapisuje wpis logu Cloud Logging. Wpisy w logach składają się z metadanych i danych wpisu. Więcej informacji o wpisach w logach znajdziesz w artykule Informacje o wpisach. Informacje o zawartości właściwości metadata znajdziesz w artykule LogEntry w dokumentacji Cloud Logging.

Składnia

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

Przykład: ciąg znaków

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

Przykład: JSON

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

Parametry żądania

Parametr Opis Typ Domyślny Wymagane
logName Nazwa logu, do którego należy ten wpis. Ciąg znaków Brak Tak
metadata Metadane wpisu logu.
Więcej informacji i opcji ustawiania type i labels w metadata znajdziesz w artykule MonitoredResource.
JSON Brak Nie
message Dane, które mają być używane jako wartość tego wpisu logu. Możesz podać prosty ciąg znaków lub użyć formatu JSON, aby zarejestrować bardziej uporządkowany komunikat. Ciąg znaków lub JSON Brak Tak

Odpowiedź

None, jeśli wiadomość została zapisana w logu. W przeciwnym razie żądanie zwróci błąd. Zobacz też Debugowanie rozszerzenia.

Dokumentacja konfiguracji

Podczas konfigurowania i wdrażania tego rozszerzenia do użytku w proxy interfejsu API użyj tych informacji.

Wspólne właściwości rozszerzenia

Dla każdego rozszerzenia dostępne są poniższe właściwości.

Usługa Opis Domyślnie Wymagany
name Nazwa nadana konfiguracji rozszerzenia. Brak Tak
packageName Nazwa pakietu rozszerzeń podana przez Apigee Edge. Brak Tak
version Numer wersji pakietu rozszerzenia, z którego konfigurujesz rozszerzenie. Brak Tak
configuration Wartość konfiguracji specyficzna dla dodawanego rozszerzenia. Zobacz Właściwości tego pakietu rozszerzeń Brak Tak

Właściwości tego pakietu rozszerzenia

Określ wartości tych właściwości konfiguracji, które są specyficzne dla tego rozszerzenia.

Właściwość Opis Domyślny Wymagane
projectId Identyfikator projektu w chmurze Google, w którym mają być tworzone dzienniki. Brak Tak
credentials Gdy wpiszesz je w konsoli Apigee Edge, będą to treści pliku klucza konta usługi. Gdy są wysyłane przez interfejs Management API, jest to wartość zakodowana w formacie base64 wygenerowana z pliku klucza konta usługi. Brak Tak