Tüm Edge for Private Cloud müşterilerinin, API proxy trafiğiyle ilgili istatistiklerini Apigee'ye göndermesi gerekir. Apigee, müşterilerin bu bilgileri günde bir kez, muhtemelen bir cron işi oluşturarak yüklemesini önerir.
Verileri üretim API dağıtımlarınız için göndermeniz gerekir ancak geliştirme veya test dağıtımlarındaki API'ler için göndermemeniz gerekir. Çoğu Edge kurulumunda, üretim API'leriniz için belirli kuruluşlar veya ortamlar tanımlarsınız. Gönderdiğiniz veriler yalnızca söz konusu üretim kuruluşları ve ortamları içindir.
Apigee, bu verilerin yüklenmesine yardımcı olmak için apigee-analytics-collector
komut satırı yardımcı programının Beta sürümünü sunar. Bu yardımcı program, API çağrı hacmi raporunu Apigee'ye geri gönderir. Private Cloud kurulumunun tüm Uçları, trafik verilerini almak ve Apigee'ye bildirmek için bu yardımcı programı kullanabilir.
Gerekli: Veri yüklemeden önce Apigee Destek Ekibi ile iletişime geçin
Apigee'ye veri yüklemeden önce ilk katılım sürecini tamamlamak için Apigee Edge Destek Ekibi ile iletişime geçmeniz gerekir.
Apigee-analytics-collector'u yükleme
apigee-analytics-collector
yardımcı programı, apigee-service
yardımcı programını kullanarak yüklediğiniz bir BGBG'dir.
Nereye yüklenir?
apigee-analytics-collector
yardımcı programını yüklediğiniz düğüm, Uç Yönetim Sunucusu'nda Edge Management API'ye erişebilen herhangi bir düğüm olabilir. Yönetim Sunucusu'na API istekleri gönderebildiği sürece, istemciyi doğrudan Yönetim Sunucusu'na, Edge yüklemesinin başka bir düğümüne veya ayrı bir düğüme yükleyebilirsiniz.
İnternet erişimiyle ilgili gereksinimler
apigee-analytics-collector
yardımcı programını harici internet erişimi olan bir makineye yükleyin. Ardından apigee-analytics-collector
yardımcı programı, verileri doğrudan Apigee'ye yükleyebilir.
Uç Yönetim Sunucusu'nda hem Edge Management API'ye hem de harici internete erişimi olan bir düğüm yoksa trafik verilerini yerel olarak kaydetmek için Edge Management API'yi kullanabilirsiniz. Ardından, Apigee'ye yüklemek için verileri internet erişimi olan bir makineye aktarmanız gerekir. Bu senaryoda, apigee-analytics-collector
yardımcı programını kullanmanız gerekmez. Daha fazla bilgi için Apigee'ye manuel olarak veri yükleme bölümüne bakın.
Döşeme
apigee-analytics-collector
yardımcı programını yüklemek için aşağıdaki komutu kullanın. BGBG dosyası yüklediğiniz için bu komutun kök kullanıcı veya tam sudo erişimine sahip bir kullanıcı tarafından çalıştırılması gerekir. Tam sudo erişimi için bu, kullanıcının root ile aynı işlemleri yapmak üzere sudo erişimine sahip olduğu anlamına gelir.
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector install
Apigee-analytics-collector'u çalıştırma
Bu bölümde, apigee-analytics-collector
yardımcı programını nasıl çalıştıracağınız açıklanmaktadır.
Bir kullanıcıyı Apigee-analytics-collector aracını çalıştıracak şekilde yapılandırma
apigee-analytics-collector
uygulamasını kök olmayan kullanıcı olarak çalıştırmalısınız. Bu kullanıcının, "Apigee" kullanıcısına tam sudo erişimine sahip olması gerekir.
Bir kullanıcıyı "Apigee" kullanıcısına tam sudo erişimi sahibi olacak şekilde yapılandırmak için "visudo" komutunu kullanarak sudoers dosyasını ekleyerek şunları ekleyin:
analyticsUser ALL=(apigee) NOPASSWD: ALL
Burada analyticsUser, apigee-analytics-collector
yardımcı programını çalıştıran kişinin kullanıcı adıdır.
apigee-analytics-collector
yardımcı programını yükleyip kullanıcıyı yapılandırdıktan sonra apigee-analytics-collector
yardımcı programı için yardım komutunu çalıştırarak yardımcı programı test edebilirsiniz:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic --help
Apigee-analytics-collector'u çalıştırmak için gerekli bilgiler
apigee-analytics-collector
komutunu çalıştırmak ve verileri Apigee'ye yönlendirmek için aşağıdaki bilgilere ihtiyacınız vardır:
apigee_mgmt_api_uri
: Yönetim Sunucunuzdaki Edge API'nin temel URL'si. Bu URL genellikle aşağıdaki biçimdedir:http://ms_IP:8080/v1
Burada ms_IP, IP adresi veya Yönetim Sunucunuzdur. 8080 ise Edge API tarafından kullanılan bağlantı noktasıdır. Edge API için bir DNS girişi oluşturduysanız URL şu biçimdedir:
http://ms_DNS/v1
Edge Management API'de TLS'yi etkinleştirirseniz şu biçimde görünür:
https://ms_IP:8080/v1 https://ms_DNS/v1
apigee_mgmt_api_email
: Edge/stats
API'lerine erişimi olan bir hesabın e-posta adresi. Bu genellikle Edge sistem yöneticisinin e-postası veya üretim kuruluşlarınız için kuruluş yöneticisinin e-postası olur.apigee_mgmt_api_password
:apigee_mgmt_api_email
tarafından belirtilen hesabın Edge şifresi.apigee_analytics_client_id
ve apigee_analytics_secret: Apigee'ye veri yüklemeye ilişkin kimlik bilgileriniz.apigee_analytics_client_id
veapigee_analytics_secret
hizmetlerini edinmek için lütfen Apigee Edge Desteği'nden destek kaydı oluşturun.
Örnek komutlar
Aşağıda, Edge kurulumundaki tüm kuruluşlar ve ortamlar için trafik verilerini almak ve bu verileri Apigee'ye yüklemek için kullanılabilecek örnek bir komut verilmiştir. apigee-analytics-collector
komutunu çalıştırmak için apigee-service
kodunu nasıl kullandığınıza dikkat edin:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
Komutun, apigee_analytics_client_id ve apigee_analytics_client_id gibi gerekli tüm bilgileri içerdiğine dikkat edin.
Sonuçları şu biçimde görürsünüz:
[ { "org": "myOrg", "env": "prod", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] }, { "org": "VALIDATE", "env": "test", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] } ]
Komutun işlemlerini kontrol etmek için komut satırı seçeneklerini kullanın. Oluşturulan verilere dahil edilecek kuruluşları ve ortamları belirtmek için aşağıdaki seçenekleri kullanın:
-i, --include_orgs comma-separated list of items
-x, --exclude_orgs comma-separated list of items
-n, --include_envs comma-separated list of items
-e, --exclude_envs comma-separated list of items
Örneğin, yalnızca üretim kuruluşlarını ve ortamlarını belirtmek için -i
(veya --include_orgs
) ve -n
(ya da --include_envs)
seçeneklerini) kullanın:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
Bu örnekte, yalnızca myOrg
üretim ortamından veri topluyorsunuz.
Apigee'ye göndermeden önce incelemek üzere verileri bir ekrana dökümünü almak için -S
seçeneğini kullanın:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
-S
seçeneği, Apigee'ye veri yükleme işlemini atlar. Daha sonra komutu, verileri Apigee'ye göndermek için -S
seçeneği olmadan yeniden çalıştırabilirsiniz.
-S
seçeneğini kullanmanın nedenlerinden biri, farklı veri türlerini yerel olarak görüntüleyebilmenizdir. Apigee yalnızca API trafik verilerini yüklemenizi gerektirir ancak -D
seçeneği API ürünleri, geliştiriciler, uygulamalar veya API proxy'leri ile ilgili verileri göstermenize olanak tanır. Aşağıdaki örnekte, geliştirici verilerini yerel olarak görüntülemek için -D
ve -S
seçenekleri kullanılmaktadır:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -D devs \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
Ayrıntılı çıkış almak için -v
seçeneğini, apigee-analytics-collector
tarafından oluşturulan curl komutlarını görmek için -R
seçeneğini ekleyin:
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -R -v \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
Sonraki bölümde, komut satırı seçeneklerinin tam listesi yer almaktadır.
Komut parametreleri
Aşağıdaki tabloda apigee-analytics-collector
yardımcı programı için tüm seçenekler listelenmiştir:
Komut | Açıklama |
---|---|
-h, --help |
Çıkış kullanım bilgileri |
-D, --dimension dimension |
Toplanacak trafik boyutu. Valid values are:
|
-d, --days days
|
Geçerli tarihten itibaren toplanacak geçmiş günlerdeki veri sayısı. Varsayılan değer 3'tür.
|
-m, --apigee_mgmt_api_uri apigee_mgmt_api_uri |
Edge Management API'nin URL'si. |
-u, --apigee_mgmt_api_email apigee_mgmt_api_email |
Edge |
-p, --apigee_mgmt_api_password apigee_mgmt_api_password |
|
-i, --include_orgs items
|
Çıkışa dahil edilecek kuruluşların virgülle ayrılmış listesi. |
-x, --exclude_orgs items
|
Çıkıştan hariç tutulacak kuruluşların virgülle ayrılmış listesi. |
-n, --include_envs items
|
Çıkışa dahil edilecek ortamların virgülle ayrılmış listesi. |
-e, --exclude_envs items
|
Çıkıştan eklenecek ortamların virgülle ayrılmış listesi. |
-o, --output path
|
Çıkışın kaydedileceği yol ve dosya adı. |
-s, --time_range_start time_range_start
|
Trafik istatistiklerini sorgulamak için başlatılacak zaman aralığı: "MM/DD/YYYY HH:MM".
|
-z, --time_range_end time_range_end
|
Trafik istatistiklerini sorgulamak için şu biçimdeki zaman aralığı sonu: "04/01/2016 24:00".
|
-t, --time_unit time_unit
|
Trafik verileri için zaman birimi.
|
-S, --standard_output
|
Çıktıyı Apigee'ye yüklemek yerine terminale (stdout) yazın. |
-c, --apigee_analytics_client_id apigee_analytics_client_id
|
Apigee'ye veri yükleme kimliğiniz. Almak için lütfen Apigee Edge Desteği'nden destek kaydı oluşturun. |
-r, --apigee_analytics_secret apigee_analytics_secret
|
Apigee'ye veri yükleme sırrınız. Almak için lütfen Apigee Edge Desteği'nden destek kaydı oluşturun. |
-R, --include_curl_commands
|
Oluşturulan |
-v, --verbose
|
Ayrıntılı çıktıyı göster. |
Apigee'ye manuel olarak veri yükleme
Apigee, apigee-analytics-collector
yardımcı programını harici internet erişimi olan bir makineye yüklemenizi önerir. Ardından apigee-analytics-collector
yardımcı programı, verileri doğrudan Apigee'ye yükleyebilir.
Ancak makinenin harici internet erişimi yoksa trafik verilerini toplamak için Edge Management API'yi kullanın. Ardından, verileri internet erişimi olan bir makineden Apigee'ye yüklemek için curl
komutlarını kullanın. Bu işlemi, Edge kurulumunuzdaki her üretim kuruluşu ve ortam için tekrarlamanız gerekir.
Belirli bir zaman aralığında belirli bir kuruluş ve ortamla ilgili trafik verilerini toplamak için aşağıdaki curl
komutunu kullanın:
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://ms_IP:8080/v1/organizations/org_name/environments/env_name/stats/apiproxy?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour"
Bu komut, Edge Get API mesaj sayısı API'sini kullanır. Bu komutta:
- apigee_mgmt_api_email:apigee_mgmt_api_password, Edge /stats API'lerine erişimi olan bir hesabın e-posta adresini belirtir.
- ms_IP, Uç Yönetim Sunucusu'nun IP adresi veya DNS adıdır.
- org_name ve env_name, kuruluşu ve ortamı belirtir.
- apiproxy, metrikleri API proxy'lerine göre gruplandıran boyuttur.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour
, zaman aralığını toplanacak metriklerin zaman birimlerine böler.curl
komutunun zaman aralığındaki boşluklar için%20
onaltılık kodunu kullandığına dikkat edin.
Örneğin, 24 saatlik bir süre içinde API proxy mesajı sayılarını saat bazında toplamak için aşağıdaki API çağrısını kullanın.
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://192.168.56.103:8080/v1/organizations/myOrg/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange=01%2F01%2F2018%2000%3A00~01%2F02%2F2018%2000%3A00&timeUnit=hour"
(timeRange
öğesinin URL kodlamalı karakterler içerdiğini unutmayın.)
Şu formda bir yanıt göreceksiniz:
{ "environments" : [ { "dimensions" : [ { "metrics" : [ { "name" : "sum(message_count)", "values": [ { "timestamp": 1514847600000, "value": "35.0" }, { "timestamp": 1514844000000, "value": "19.0" }, { "timestamp": 1514840400000, "value": "58.0" }, { "timestamp": 1514836800000, "value": "28.0" }, { "timestamp": 1514833200000, "value": "29.0" }, { "timestamp": 1514829600000, "value": "33.0" }, { "timestamp": 1514826000000, "value": "26.0" }, { "timestamp": 1514822400000, "value": "57.0" }, { "timestamp": 1514818800000, "value": "41.0" }, { "timestamp": 1514815200000, "value": "27.0" }, { "timestamp": 1514811600000, "value": "47.0" }, { "timestamp": 1514808000000, "value": "66.0" }, { "timestamp": 1514804400000, "value": "50.0" }, { "timestamp": 1514800800000, "value": "41.0" }, { "timestamp": 1514797200000, "value": "49.0" }, { "timestamp": 1514793600000, "value": "35.0" }, { "timestamp": 1514790000000, "value": "89.0" }, { "timestamp": 1514786400000, "value": "42.0" }, { "timestamp": 1514782800000, "value": "47.0" }, { "timestamp": 1514779200000, "value": "21.0" }, { "timestamp": 1514775600000, "value": "27.0" }, { "timestamp": 1514772000000, "value": "20.0" }, { "timestamp": 1514768400000, "value": "12.0" }, { "timestamp": 1514764800000, "value": "7.0" } ] } ], "name" : "proxy1" } ], "name" : "prod" } ], "metaData" : { "errors" : [ ], "notices" : [ "query served by:53dab80c-e811-4ba6-a3e7-b96f53433baa", "source pg:6b7bab33-e732-405c-a5dd-4782647ce096", "Table used: myorg.prod.agg_api" ] } }
Daha sonra bu verileri internet erişimi olan bir makineden Apigee'ye yüklemek için aşağıdaki curl
komutunu kullanın:
curl -X POST -H 'Content-Type:application/json' \ -u apigee_analytics_client_id:apigee_analytics_secret \ https://nucleus-api-prod.apigee.com/v1/apigee-analytics-cli-api/traffic/orgs/org_name/apis -d '"environments"...'
Burada:
- apigee_analytics_client_id:apigee_analytics_secret, Apigee'den edindiğiniz verileri Apigee'ye yüklemek için kullanılan kimlik bilgilerinizi belirtir.
- org_name, kuruluş adını belirtir.
- "environments"..., yukarıdaki istatistikleri toplamak için kullandığınız
curl
komutunun sonuçlarını içerir.