Google Stackdriver Logging Uzantısı

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

Sürüm 1.3.7

Stackdriver Logging günlüklerine giriş yazma

Bu içerik, uzantının yapılandırılması ve kullanılmasıyla ilgili referans bilgiler sağlar.

Ön koşullar

Bu uzantıyı bir API proxy'sinden kullanmadan önce şunları yapmanız gerekir:

  1. IAM'de, uzantınızı Stackdriver Logging sisteminde temsil edecek proje üyesine Logging > Logs Writer (Günlük Kaydı > Günlük Yazıcı) ve Logging > Logs Viewer (Günlük Kaydı > Günlük Görüntüleyici) rolünü atayın. Rol verme talimatları için Belirli kaynaklar için 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 GCP Console'u kullanın.

  3. Yapılandırma referansını kullanarak uzantıyı eklerken ve yapılandırırken sonuçtaki 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ı bir PostClientFlow'dan çağırmak için ExtensionCallout politikasını kullanmak istiyorsanız kuruluşunuzda features.allowExtensionsInPostClientFlow işaretinin true olarak ayarlandığından emin olun.

  • Apigee Edge for Public Cloud 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.

  • Apigee Edge for Private Cloud müşterisiyseniz features.allowExtensionsInPostClientFlow işaretini true olarak ayarlamak için Update organization properties API'yi kullanın.

Stackdriver Logging hakkında

Stackdriver Logging, Google Cloud Platform'daki (GCP) Stackdriver ürün paketinin bir parçasıdır. Günlükler için depolama alanı, Günlük Görüntüleyici adlı bir kullanıcı arayüzü ve günlükleri programatik olarak yönetmek için bir API içerir. Stackdriver Logging ile günlük girişlerini okuyup yazabilir, günlüklerinizi arayıp filtreleyebilir, günlüklerinizi dışa aktarabilir ve günlük tabanlı metrikler oluşturabilirsiniz.

Bu uzantı şu anda günlüğe giriş yazmaktadır. Daha fazla bilgi için Stackdriver Logging belgelerine bakın.

Örnekler

Aşağıdaki örneklerde, ExtensionCallout politikası kullanılarak Stackdriver Logging uzantısı işlemlerine yönelik desteğin nasıl yapılandırılacağı gösterilmektedir.

Global günlük

Aşağıdaki politika, "Bu bir testtir" mesajını Stackdriver Global kaynağındaki example-log adlı bir günlüğe yazar. Gerçek kullanımda, mesajın değerini API proxy'sinde başka bir yerde ayarladığınız bir akış değişkeninde yer alması 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>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>

Bu içerik, uzantının yapılandırılması ve kullanılmasıyla ilgili referans bilgiler sağlar. Apigee konsolunu kullanarak uzantı 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, bir Stackdriver 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 özelliğiyle ilgili bilgiler için Stackdriver Logging belgelerindeki LogEntry nesnesine bakın.

Söz dizimi

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

Örnek

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "stackdriver-log-name-to-use",
  "metadata" : { "resource" : { "type" : "global" } },
  "message" : "data-to-log-as-entry"
}]]></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.
meta veri Günlük girişiyle ilgili meta veriler.
metadata içinde type ve labels ayarlarıyla ilgili daha fazla bilgi ve seçenek için MonitoredResource başlıklı makaleyi inceleyin.
JSON Yok. Sıra
mesaj Bu günlük girişi için değer olarak kullanılacak veriler. Dize Yok. Evet.

Yanıt

İleti günlüğe yazılmışsa yok. Aksi takdirde, istek hata döndürür. Ayrıca Uzantıda hata ayıklama başlıklı makaleyi de inceleyin.

Yapılandırma Referansı

Bu uzantıyı API proxy'lerinde kullanılacak şekilde yapılandırıp dağıtırken aşağıdakileri kullanın.

Sık kullanılan 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ı paketinin özellikleri

Bu uzantıya özel aşağıdaki yapılandırma özelliklerinin değerlerini belirtin.

Mülk Açıklama Varsayılan Zorunlu
proje kimliği Günlüklerin oluşturulması gereken GCP proje kimliği. Yok. Evet.
giriş bilgileri Apigee Edge konsoluna girildiğinde bu, 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.