Google Cloud Logging Uzantısı

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
info

Sürüm 2.0.0

Cloud Logging günlüklerine giriş yazma

Bu içerikte, bu uzantıyı yapılandırma ve kullanmayla ilgili referanslar sağlanmaktadır.

Ön koşullar

Bu uzantıyı bir API proxy'sinden kullanmadan önce:

  1. IAM'da, uzantınızı Cloud Logging sisteminde temsil edecek proje üyesine Günlük > Günlük Yazıcı rolünü atayın. Rol vermeyle ilgili talimatlar için Belirli kaynaklar için bir hizmet hesabına rol verme başlıklı makaleyi inceleyin. Günlüğe kaydetme rolleri hakkında daha fazla bilgi için Erişim Denetimi Kılavuzu'na bakın.

  2. Hizmet hesabı için anahtar oluşturmak üzere Google Cloud Console'u kullanın.

  3. Yapılandırma referansını kullanarak uzantıyı ekleyip yapılandırırken elde edilen anahtar JSON dosyasının içeriğini kullanın.

Bu uzantı, PostClientFlow içinde bulunan bir ExtensionCallout politikası tarafından çağrılmayı destekler. Bu uzantıyı PostClientFlow'dan çağırmak için ExtensionCallout politikasını kullanmak istiyorsanız kuruluşunuzda features.allowExtensionsInPostClientFlow işaretinin true olarak ayarlandığından emin olun.

  • Public Cloud için Apigee Edge müşterisiyseniz kuruluşunuzda features.allowExtensionsInPostClientFlow işaretinin true olarak ayarlandığından emin olmak için Apigee Edge Destek Ekibi ile iletişime geçmeniz gerekir.

  • Private Cloud için Apigee Edge müşterisiyseniz features.allowExtensionsInPostClientFlow işaretini true olarak ayarlamak için Kuruluş özelliklerini güncelle API'sini kullanın.

Cloud Logging hakkında

Cloud Logging, Google Cloud'un işlem paketinin bir parçasıdır. Günlükler için depolama alanı, Günlük Gezgini adlı bir kullanıcı arayüzü ve günlükleri programatik olarak yönetmek için bir API içerir. Cloud Logging ile günlük girişlerini okuyabilir ve yazabilir, günlüklerinizi arayabilir ve filtreleyebilir, günlüklerinizi dışa aktarabilir ve günlük tabanlı metrikler oluşturabilirsiniz.

Cloud Logging uzantısı şu anda günlüke girişler yazıyor. Daha fazla bilgi için Cloud Logging belgelerine göz atın.

Örnekler

Aşağıdaki örneklerde, ExtensionCallout politikası kullanılarak Cloud Logging uzantı işlemleri için desteğin nasıl yapılandırılacağı gösterilmektedir.

Global günlük

Aşağıdaki politika, This is a test mesajını Cloud Global kaynağındaki example-log adlı bir günlüke yazar. Gerçek kullanımda, mesajı API proxy'sinde başka bir yerde değerini ayarladığınız bir akış değişkeninde bulundurmanız muhtemeldir.

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

Bu içerikte, bu uzantıyı yapılandırma ve kullanmayla ilgili referanslar sağlanmaktadır. Apigee konsolunu kullanarak bir uzantıyı yapılandırma adımları için Uzantı ekleme ve yapılandırma başlıklı makaleyi inceleyin.

İşlemler

log

Günlüğe bir mesaj yazar.

Bu işlem, Cloud Logging günlük girişi yazar. Günlük girişleri, meta verilerden ve giriş verilerinden oluşur. Günlük girişleri hakkında daha fazla bilgi için Giriş referansı bölümüne bakın. metadata mülkünün içeriği hakkında bilgi edinmek için Cloud Logging belgelerindeki LogEntry nesnesine bakın.

Söz dizimi

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

Örnek: Dize

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

Örnek: JSON

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

İstek parametreleri

Parametre Açıklama Tür Varsayılan Zorunlu
logName Bu girişin ait olduğu günlüğün adı. Dize Yok Evet
metadata Günlük girişiyle ilgili meta veriler.
metadata'te type ve labels ayarlama hakkında daha fazla bilgi ve seçenek için MonitoredResource bölümüne bakın.
JSON Yok Hayır
message Bu günlük girişinin değeri olarak kullanılacak veriler. Daha yapılandırılmış bir mesajı günlük kaydına almak için basit bir dize belirtebilir veya JSON kullanabilirsiniz. Dize veya JSON Yok Evet

Yanıt

İleti günlük kaydına eklenmişse None. Aksi takdirde istek hata döndürür. Ayrıca Uzantılarda hata ayıklama başlıklı makaleyi inceleyin.

Yapılandırma referansı

Bu uzantıyı API proxy'lerinde kullanılmak üzere yapılandırırken ve dağıtırken aşağıdakileri kullanın.

Ortak uzantı özellikleri

Aşağıdaki özellikler her uzantı için mevcuttur.

Mülk Açıklama Varsayılan Zorunlu
name Uzantının bu yapılandırmasını verdiğiniz ad. Yok Evet
packageName Apigee Edge'in sağladığı uzantı paketinin adı. Yok Evet
version Uzantıyı yapılandırdığınız uzantı paketinin sürüm numarası. Yok Evet
configuration Eklediğiniz uzantıya özgü yapılandırma değeri. Bu uzantı paketinin özellikleri başlıklı makaleyi inceleyin Yok Evet

Bu uzantı paketine ait özellikler

Bu uzantıya özgü aşağıdaki yapılandırma özellikleri için değerler belirtin.

Mülk Açıklama Varsayılan Zorunlu
projectId Günlüklerin oluşturulması gereken Google Cloud proje kimliği. Yok Evet
credentials Apigee Edge konsoluna girildiğinde, hizmet hesabı anahtar dosyanızın içeriğidir. Yönetim API'si üzerinden gönderildiğinde, hizmet hesabı anahtar dosyasından oluşturulan base64 kodlu bir değerdir. Yok Evet