API'yi kullanarak günlükleri görüntüleme

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

API İzleme kontrol panellerinde gösterilen metrikleri hesaplamak için kullanılan ham verileri görüntülemek üzere API İzleme günlüklerini indirin. Özel zaman aralıkları, belirli proxy'ler, belirli durum kodları ve diğer birçok değişkenle ilgili günlükleri indirebilirsiniz.

Not: Varsayılan olarak, Logs API'ye yapılan çağrılar yalnızca 4xx ve 5xx durum kodlarıyla sonuç döndürür, 2xx koduyla sonuç döndürmez. Bu işlem, çoğu sonucun durum kodu 2xx olduğu için sonuç sayısını sınırlamak amacıyla yapılır. 2xx durum koduna sahip sonuçlar almak için isteğe status=2xx ekleyin. Örneğin: https://apimonitoring.enterprise.apigee.com/logs?status=2xx.

Aşağıdaki bölümlerde, API'yi kullanarak günlüklerin nasıl yönetileceği açıklanmaktadır:

logs API hakkında daha fazla bilgi için Logs API başlıklı makaleyi inceleyin.

Bu örneklerde kullanılan cURL seçenekleri hakkında bilgi edinmek için cURL'yi kullanma başlıklı makaleyi inceleyin.

Bir kuruluş ve ortam için günlükleri indirme

Logs API'yi kullanarak belirli bir kuruluşun ve ortamın günlüklerini indirin:

https://apimonitoring.enterprise.apigee.com/logs

org ve env sorgu parametrelerini kullanarak kuruluşun ve ortamın adını iletmeniz gerekir.

API, varsayılan olarak önceki bir saate ait en son 10 günlük girişi döndürür. Örneğin:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

$ACCESS_TOKEN değerini, OAuth 2.0 erişim jetonu edinme bölümünde açıklandığı gibi OAuth 2.0 erişim jetonunuza ayarlayın.

Yanıt, aşağıdaki biçimde bir günlük girişleri dizisidir:

[   
  {
"request":"GET /v1/o/myorg/z HTTP/1.1",
    "request_length":1349,
    "request_message_id":"rrt-0623eb157b650315c-c-ne-7785-16029140-1",
    "virtual_host":"api.enterprise.apigee.com",
    "response_size":144,
    "response_time":0.551,
    "response_status":"404",
    "timestamp":"2018-08-14T17:31:07Z",
    "fault_code":"messaging.adaptors.http.flow.ErrorResponseCode",
    "fault_flow":"-",
    "fault_policy":"null/null",
    "fault_proxy":
        "/organizations/myorg/environments/prod/apiproxies/myAPI/revisions/50",
    "fault_source":"target"
  },
  …
]

ISO biçimli bir zaman aralığı belirtmek için from ve to sorgu parametrelerini kullanın. Tarih biçimi şu şekilde olabilir:

  • yyyy-mm-ddThh:mm:ssZ
  • yyyy-mm-ddThh:mm:ss+00:00

Örneğin:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&from=2018-08-13T14%3A04%3A00Z&to=2018-08-13T14%3A10%3A00Z" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

API'de birçok isteğe bağlı sorgu parametresi vardır. Örneğin, HTTP 404 yanıtları oluşturan myAPI adlı bir proxy'nin günlüklerini görmek için:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&proxy=myAPI&status=404" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

10'dan fazla günlük girişi döndürmek için limit sorgu parametresini ayarlayın. Bu değeri en fazla 1.000 değerine ayarlayabilirsiniz:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs?org=myorg&env=prod&proxy=myAPI&status=404&limit=200" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN"

Diğer seçenekler için Logs API'ye bakın.

Sanal ana makine ve ana yola ilişkili proxy'leri listeleme

Edge Router'daki sanal ana makine, bir alan adı, HTTP/HTTPS gibi bir protokol ve bağlantı noktası numarası belirtmenize olanak tanır. Örneğin, Edge Router'da aşağıdaki ayarlara sahip bir sanal ana makine tanımlarsınız:

  • ana makine takma adı = apis.acme.com
  • port = 443
  • TLS etkinleştirildi

Bu ayarlara bağlı olarak, bu sanal ana makineyle ilişkili bir API proxy'sine yapılan istek şu formu kullanır:

https://apis.acme.com/proxy-base-path/resource-path

Burada:

  • proxy-base-path, API proxy'si oluşturduğunuzda tanımlanır ve her API proxy'si için benzersizdir.
  • resource-path, API proxy aracılığıyla erişilebilen bir kaynağın yoludur.

Sanal ana makineler hakkında daha fazla bilgi için Sanal ana makineler hakkında başlıklı makaleyi inceleyin.

Logs API'nin aşağıdaki kaynağına GET isteği göndererek belirli bir sanal ana makine ve temel yolla ilişkili API proxy'lerinin listesini indirin:

https://apimonitoring.enterprise.apigee.com/logs/apiproxies

Kuruluşun ve ortamın adını, org ve env sorgu parametrelerinin yanı sıra sanal ana makine ve temel yol ile ilişkili URI'yi kullanarak iletmeniz gerekir.

Örneğin, aşağıdaki API çağrısı, http://apis.acme.com sanal ana makinesiyle ve /v1/perf taban yoluyla ilişkili proxy'leri döndürür:

curl -X GET \
"https://apimonitoring.enterprise.apigee.com/logs/apiproxies?org=myorg&env=prod&select=http://apis.acme.com/v1/perf" \
-H "accept: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" 

$ACCESS_TOKEN değerini, OAuth 2.0 erişim jetonu edinme bölümünde açıklandığı gibi OAuth 2.0 erişim jetonunuza ayarlayın.

Diğer seçenekler için Logs API'ye bakın.