Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Genel bakış
Bu bölümde izleme, günlük kaydı ve hata ayıklama dahil olmak üzere Edge Mikro Ağ Geçidi'nin nasıl yönetileceği ve yapılandırılacağı ele alınmaktadır.
Yapılandırma değişiklikleri yapma
Bilmeniz gereken yapılandırma dosyaları şunlardır:
- Varsayılan sistem yapılandırma dosyası
- Yeni başlatılan Edge Microgateway örneği için varsayılan yapılandırma dosyası
- Çalışan örnekler için dinamik yapılandırma dosyası
Bu bölümde, söz konusu dosyalar ve bunları değiştirmek için bilmeniz gerekenler açıklanmaktadır. Yapılandırma dosyası ayarları hakkında ayrıntılı bilgi için Edge Microgateway yapılandırma referansı sayfasına bakın.
Varsayılan sistem yapılandırma dosyası
Edge Microgateway'i yüklediğinizde buraya varsayılan bir sistem yapılandırma dosyası yerleştirilir:
[prefix]/lib/node_modules/edgemicro/config/default.yaml
Burada [prefix]
, npm
ön ek dizinidir.
Edge Microgateway nerede kurulu? bölümüne göz atın.
Sistem yapılandırma dosyasını değiştirirseniz Edge Microgateway'i yeniden başlatmanız, yeniden yapılandırmanız ve yeniden başlatmanız gerekir:
edgemicro init
numaralı telefonu araedgemicro configure [params]
numaralı telefonu araedgemicro start [params]
numaralı telefonu ara
Yeni başlatılan Edge Microgateway örnekleri için varsayılan yapılandırma dosyası
edgemicro init
uygulamasını çalıştırdığınızda, default.yaml
adlı sistem yapılandırma dosyası (yukarıda açıklanmıştır) şu dizine yerleştirilir:
~/.edgemicro
Yapılandırma dosyasını ~/.edgemicro
içinde değiştirirseniz Edge Microgateway'i yeniden yapılandırmanız ve yeniden başlatmanız gerekir:
edgemicro stop
edgemicro configure
[params]
edgemicro start
[params]
Çalışan örnekler için dinamik yapılandırma dosyası
edgemicro configure [params]
çalıştırdığınızda, ~/.edgemicro
içinde bir dinamik yapılandırma dosyası oluşturulur. Dosya şu kalıba göre adlandırılır: [org]-[env]-config.yaml
burada org
ve env
, Apigee Edge kuruluş ve ortam adlarınızdır. Yapılandırma değişiklikleri yapmak için bu dosyayı kullanabilir ve ardından kesinti olmadan yeniden yükleyebilirsiniz. Örneğin, bir eklenti ekler ve yapılandırırsanız aşağıda açıklandığı gibi, herhangi bir kapalı kalma süresi olmadan yapılandırmayı yeniden yükleyebilirsiniz.
Edge Microgateway çalışıyorsa (sıfır kapalı kalma süresi seçeneği):
- Edge Mikro Ağ Geçidi yapılandırmasını yeniden yükleyin:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
Burada:
org
, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).env
, kuruluşunuzdaki bir ortamdır (test veya üretim gibi).key
, yapılandır komutu tarafından daha önce döndürülen anahtardır.secret
, daha önce yapılandır komutu tarafından döndürülen anahtardır.
Örnek
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d000723 -s 05c14356e42ed136b8dd35cf8a18531ff52d7299134677e30ef4e34ab0cc824
Edge Mikro Ağ Geçidi durdurulmuşsa:
- Edge Mikro Ağ Geçidi'ni yeniden başlatın:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
Burada:
org
, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).env
, kuruluşunuzdaki bir ortamdır (test veya üretim gibi).key
, yapılandır komutu tarafından daha önce döndürülen anahtardır.secret
, daha önce yapılandır komutu tarafından döndürülen anahtardır.
Örnek
edgemicro start -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d000723 -s 05c14356e42ed136b8dd35cf8a18531ff52d7299134677e30ef4e34ab0cc824
Aşağıda bir yapılandırma dosyası örneği verilmiştir. Yapılandırma dosyası ayarlarıyla ilgili ayrıntılar için Edge Microgateway yapılandırma referansı sayfasına bakın.
edge_config: bootstrap: >- https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test jwt_public_key: 'https://docs-test.apigee.net/edgemicro-auth/publicKey' managementUri: 'https://api.enterprise.apigee.com' vaultName: microgateway authUri: 'https://%s-%s.apigee.net/edgemicro-auth' baseUri: >- https://edgemicroservices.apigee.net/edgemicro/%s/organization/%s/environment/%s bootstrapMessage: Please copy the following property to the edge micro agent config keySecretMessage: The following credentials are required to start edge micro products: 'https://docs-test.apigee.net/edgemicro-auth/products' edgemicro: port: 8000 max_connections: 1000 max_connections_hard: 5000 config_change_poll_interval: 600 logging: level: error dir: /var/tmp stats_log_interval: 60 rotate_interval: 24 plugins: sequence: - oauth headers: x-forwarded-for: true x-forwarded-host: true x-request-id: true x-response-time: true via: true oauth: allowNoAuthorization: false allowInvalidAuthorization: false verify_api_key_url: 'https://docs-test.apigee.net/edgemicro-auth/verifyApiKey' analytics: uri: >- https://edgemicroservices-us-east-1.apigee.net/edgemicro/axpublisher/organization/docs/environment/test
Ortam değişkenlerini ayarlama
Edge kuruluşunuz ve ortamınız için değer gerektiren komut satırı arayüzü komutları ve Edge Microgateway'i başlatmak için gereken anahtar ve gizli anahtar şu ortam değişkenlerinde depolanabilir:
EDGEMICRO_ORG
EDGEMICRO_ENV
EDGEMICRO_KEY
EDGEMICRO_SECRET
Bu değişkenleri ayarlamak isteğe bağlıdır. Bunları ayarlarsanız, Edge Mikro Ağ Geçidi'ni yapılandırmak ve başlatmak için Komut Satırı Arayüzü'nü (CLI) kullanırken değerlerini belirtmeniz gerekmez.
Edge Mikro Ağ Geçidi sunucusunda SSL'yi yapılandırma
Mikro ağ geçidi sunucusunu SSL kullanacak şekilde yapılandırabilirsiniz. Örneğin, SSL yapılandırılmış durumdayken API'leri "https" protokolüyle Edge Microgateway üzerinden şunun gibi çağırabilirsiniz:
https://localhost:8000/myapi
Mikro ağ geçidi sunucusunda SSL'yi yapılandırmak için şu adımları uygulayın:
- openssl yardımcı programını veya tercih ettiğiniz yöntemi kullanarak bir SSL sertifikası ve anahtarı oluşturun ya da alın.
- Edge Microgateway yapılandırma dosyasına
edgemicro:ssl
özelliğini ekleyin. Seçeneklerin tam listesi için aşağıdaki tabloya bakın. Edge Microgateway yapılandırmasını değiştirmeyle ilgili ayrıntılar için Yapılandırma değişiklikleri yapma bölümüne bakın. Örneğin:
edgemicro: ssl: key: <absolute path to the SSL key file> cert: <absolute path to the SSL cert file> passphrase: admin123 #option added in v2.2.2 rejectUnauthorized: true #option added in v2.2.2
- Edge Mikro Ağ Geçidi'ni yeniden başlatın. Düzenlediğiniz yapılandırma dosyasına (varsayılan dosya veya çalışma zamanı yapılandırma dosyası) bağlı olarak Yapılandırma değişiklikleri yapma bölümünde açıklanan adımları uygulayın.
Yapılandırma dosyasının SSL yapılandırılmış haldeki Edgemicro bölümüne bir örnek aşağıda verilmiştir:
edgemicro: port: 8000 max_connections: 1000 max_connections_hard: 5000 logging: level: error dir: /var/tmp stats_log_interval: 60 rotate_interval: 24 plugins: sequence: - oauth ssl: key: /MyHome/SSL/em-ssl-keys/server.key cert: /MyHome/SSL/em-ssl-keys/server.crt passphrase: admin123 #option added in v2.2.2 rejectUnauthorized: true #option added in v2.2.2
Desteklenen tüm sunucu seçeneklerinin listesi aşağıda verilmiştir:
Option | Açıklama |
---|---|
key |
ca.key dosyasının yolu (PEM biçiminde). |
cert |
ca.cert dosyasının yolu (PEM biçiminde). |
pfx |
İstemcinin özel anahtarını, sertifikasını ve CA sertifikalarını PFX biçiminde içeren pfx dosyasının yolu. |
passphrase |
Özel anahtar veya PFX parolasını içeren bir dize. |
ca |
PEM biçimindeki güvenilir sertifikaların listesini içeren bir dosyanın yolu. |
ciphers |
Kullanılacak şifreleri açıklayan, ":" ile ayrılmış bir dize. |
rejectUnauthorized |
True (doğru) değerine ayarlanırsa sunucu sertifikası, sağlanan CA listesine göre doğrulanır. Doğrulama başarısız olursa bir hata döndürülür. |
secureProtocol |
Kullanılacak SSL yöntemi. Örneğin, SSLv3_method [SSL'yi sürüm 3'e zorlamak için]. |
servername |
SNI (Sunucu Adı Göstergesi) TLS uzantısının sunucu adı. |
İstemci SSL/TLS seçeneklerini kullanma
Hedef uç noktalarına bağlanırken Edge Microgateway'i TLS veya SSL istemcisi olacak şekilde yapılandırabilirsiniz. Mikro ağ geçidi yapılandırma dosyasında, SSL/TLS seçeneklerini ayarlamak için hedef öğeyi kullanın.
Bu örnekte, tüm ana makinelere uygulanacak ayarlar gösterilmektedir:
targets: ssl: client: key: /Users/jdoe/nodecellar/twowayssl/ssl/client.key cert: /Users/jdoe/nodecellar/twowayssl/ssl/ca.crt passphrase: admin123 rejectUnauthorized: true
Bu örnekte, ayarlar yalnızca belirtilen ana makineye uygulanır:
targets: host: 'myserver.example.com' ssl: client: key: /Users/myname/twowayssl/ssl/client.key cert: /Users/myname/twowayssl/ssl/ca.crt passphrase: admin123 rejectUnauthorized: true
Aşağıda bir TLS örneği verilmiştir:
targets: host: 'myserver.example.com' tls: client: pfx: /Users/myname/twowayssl/ssl/client.pfx passphrase: admin123 rejectUnauthorized: true
Desteklenen tüm istemci seçeneklerinin listesini aşağıda bulabilirsiniz:
Option | Açıklama |
---|---|
pfx |
İstemcinin özel anahtarını, sertifikasını ve CA sertifikalarını PFX biçiminde içeren pfx dosyasının yolu. |
key |
ca.key dosyasının yolu (PEM biçiminde). |
passphrase |
Özel anahtar veya PFX parolasını içeren bir dize. |
cert |
ca.cert dosyasının yolu (PEM biçiminde). |
ca |
PEM biçimindeki güvenilir sertifikaların listesini içeren bir dosyanın yolu. |
ciphers |
Kullanılacak şifreleri açıklayan, ":" ile ayrılmış bir dize. |
rejectUnauthorized |
True (doğru) değerine ayarlanırsa sunucu sertifikası, sağlanan CA listesine göre doğrulanır. Doğrulama başarısız olursa bir hata döndürülür. |
secureProtocol |
Kullanılacak SSL yöntemi. Örneğin, SSLv3_method [SSL'yi sürüm 3'e zorlamak için]. |
servername |
SNI (Sunucu Adı Göstergesi) TLS uzantısının sunucu adı. |
Özel bir kimlik doğrulama hizmeti kullanma
Edge Microgateway, OAuth2 kimlik doğrulaması için varsayılan olarak Apigee Edge'de dağıtılan bir proxy kullanır.
Bu proxy, edgemicro configure
uygulamasını ilk kez çalıştırdığınızda dağıtılır. Varsayılan olarak bu proxy'nin URL'si Edge Microgateway yapılandırma dosyasında şu şekilde belirtilir:
authUri: https://myorg-myenv.apigee.net/edgemicro-auth
Kimlik doğrulama işlemi için kendi özel hizmetinizi kullanmak istiyorsanız yapılandırma dosyasındaki authUri
değerini hizmetinize işaret edecek şekilde değiştirin. Örneğin, kimliği doğrulamak için LDAP kullanan bir hizmetiniz olabilir.
Günlük dosyalarını yönetme
Edge Microgateway, her istek ve yanıtla ilgili bilgileri günlüğe kaydeder. Günlük dosyaları, hata ayıklama ve sorun giderme için yararlı bilgiler sağlar.
Günlük dosyalarının depolandığı konum
Varsayılan olarak, günlük dosyaları /var/tmp
içinde depolanır.
Varsayılan günlük dosyası dizini nasıl değiştirilir?
Günlük dosyalarının depolandığı dizin, Edge Microgateway yapılandırma dosyasında belirtilir. Yapılandırma değişiklikleri yapmayla ilgili ayrıntılar için Yapılandırma değişiklikleri yapma başlıklı makaleye bakın.
edgemicro: home: ../gateway port: 8000 max_connections: -1 max_connections_hard: -1 logging: level: info dir: /var/tmp stats_log_interval: 60 rotate_interval: 24
Farklı bir günlük dosyası dizini belirtmek için dir değerini değiştirin.
Günlükleri konsola gönder
Günlük kaydını, günlük bilgileri günlük dosyası yerine standart çıkışa gönderilecek şekilde yapılandırabilirsiniz. to_console
işaretini aşağıdaki şekilde true (doğru) değerine ayarlayın:
edgemicro: logging: to_console: true
Bu ayarla, günlükler standart çıkışa gönderilir. Şu anda hem stdout'a hem de bir günlük dosyasına günlük gönderemezsiniz.
Günlük kaydı düzeyini ayarlama
Şu günlük düzeylerini ayarlayabilirsiniz: bilgi, uyarı ve hata. Bilgi düzeyi önerilir. Tüm API isteklerini ve yanıtlarını günlüğe kaydeder ve varsayılan ayardır.
Günlük aralıklarını değiştirme
Bu aralıkları Edge Microgateway yapılandırma dosyasında yapılandırabilirsiniz. Yapılandırma değişiklikleri yapmayla ilgili ayrıntılar için Yapılandırma değişiklikleri yapma bölümüne bakın.
Yapılandırılabilir özellikler şunlardır:
- stats_log_interval: (varsayılan: 60) İstatistik kaydının API günlük dosyasına yazıldığı aralık (saniye cinsinden).
- rotate_interval: (varsayılan: 24) Günlük dosyalarının döndürüldüğü saat cinsinden aralık. Örneğin:
edgemicro: home: ../gateway port: 8000 max_connections: -1 max_connections_hard: -1 logging: level: info dir: /var/tmp stats_log_interval: 60 rotate_interval: 24
Not: Arşivlenen günlük dosyaları sıkıştırılmaz. Aralık başladığında, yeni bir zaman damgasıyla yeni bir günlük dosyası oluşturulur.
Günlük dosyası bakımıyla ilgili iyi uygulamalar
Günlük dosyası verileri zamanla biriktikçe Apigee, aşağıdaki uygulamalardan yararlanmanızı önerir:
- Günlük dosyaları oldukça büyüyebileceğinden, günlük dosyası dizininde yeterli alan bulunduğundan emin olun. Aşağıdaki Günlük dosyalarının depolandığı ve Varsayılan günlük dosyası dizinini değiştirme bölümlerine bakın.
- Haftada en az bir kez günlük dosyalarını silin veya ayrı bir arşiv dizinine taşıyın.
- Politikanız günlükleri silmekse daha eski günlükleri kaldırmak (temizlemek) için
edgemicro log -c
CLI komutunu kullanabilirsiniz.
Günlük dosyası adlandırma kuralı
Her bir Edge Microgateway örneği, üç tür günlük dosyası oluşturur:
- api: Edge Mikro Ağ Geçidi üzerinden gelen tüm istek ve yanıtları günlüğe kaydeder. API sayaçları (istatistikler) ve hatalar da bu dosyaya kaydedilir.
- err - Stderr'e gönderilen her şeyi günlüğe kaydeder.
- out: Stdout'a gönderilen her şeyi günlüğe kaydeder.
Adlandırma kuralı şöyledir:
edgemicro-<Host Name>-<Instance ID>-<Log Type>.log
Örneğin:
edgemicro-mymachine-local-MTQzNTgNDMxODAyMQ-api.log edgemicro-mymachine-local-MTQzNTg1NDMODAyMQ-err.log edgemicro-mymachine-local-mtqzntgndmxodaymq-out.log
Günlük dosyası içeriği hakkında
Eklendiği sürüm: 2.3.3 sürümü
Varsayılan olarak günlük kaydı hizmeti; indirilen proxy'lerin, ürünlerin ve JSON Web Token'ın (JWT) JSON'sini atlar. Bu nesnelerin çıktısını günlük dosyalarına kaydetmek istiyorsanız Edge Microgateway'i başlattığınızda DEBUG=*
değerini ayarlayın. Örneğin:
DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456
"api" günlük dosyasının içeriği
"api" günlük dosyası, Edge Microgateway üzerinden istek ve yanıt akışı hakkında ayrıntılı bilgiler içerir. "api" günlük dosyaları şöyle adlandırılır:
edgemicro-mymachine-local-MTQzNjIxOTk0NzY0Nw-api.log
Edge Mikro Ağ Geçidi'ne yapılan her istek için "api" günlük dosyasında dört etkinlik yakalanır:
- İstemciden gelen istek
- Hedefe giden istek gönderildi
- Hedeften gelen yanıt
- İstemciye giden yanıt
Bu ayrı girişlerin her biri, günlük dosyalarını daha kompakt hale getirmeye yardımcı olması için kısaltma olarak gösterilir. Aşağıda, bu dört etkinliğin her birini temsil eden dört örnek giriş verilmiştir. Günlük dosyasında aşağıdaki gibi görünürler (satır numaraları yalnızca dokümanda referans olarak verilmiştir, günlük dosyasında görünmez).
(1) 1436403888651 info req m=GET, u=/, h=localhost:8000, r=::1:59715, i=0 (2) 1436403888665 info treq m=GET, u=/, h=127.0.0.18080, i=0 (3) 1436403888672 info tres s=200, d=7, i=0 (4) 1436403888676 info res s=200, d=11, i=0
Bunları tek tek inceleyelim:
1. İstemciden gelen istek örneği:
1436403888651 info req m=GET, u=/, h=localhost:8000, r=::1:59715, i=0
- 1436403888651 - Unix tarih damgası
- bilgi: Bağlama göre değişir. Günlük düzeyine bağlı olarak bilgi, uyarı veya hata olabilir. İstatistik kaydı, uyarılar için uyarı veya hata için hata istatistikleri olabilir.
- req - Etkinliği tanımlar. Bu durumda istemciden istekte bulunun.
- m - İstekte kullanılan HTTP fiili.
- u - URL'nin temel yolu izleyen bölümü.
- h - Edge Microgateway'in dinlediği ana makine ve bağlantı noktası numarası.
- r: İstemci isteğinin kaynağı olan uzak ana makine ve bağlantı noktası.
- i: İstek kimliği. Dört etkinlik girişinin tümü bu kimliği paylaşır. Her isteğe benzersiz bir istek kimliği atanır. Günlük kayıtlarının istek kimliğine göre ilişkilendirilmesi, hedefin gecikmesi hakkında değerli bilgiler sağlayabilir.
- d - İsteğin Edge Microgateway tarafından alınmasından bu yana geçen milisaniye cinsinden süre. Yukarıdaki örnekte, hedefin istek 0 için verdiği yanıt 7 milisaniye sonra (3. satır) alındı ve yanıt 4 milisaniye sonra da istemciye gönderildi (satır 4). Diğer bir deyişle, toplam istek gecikmesi 11 milisaniyeydi. Bunun 7 milisaniyesi hedef tarafından alındı ve Edge Microgateway tarafından 4 milisaniye alındı.
2. Hedefe yapılan giden istek örneği:
1436403888665 info treq m=GET, u=/, h=127.0.0.1:8080, i=0
- 1436403888651 - Unix tarih damgası
- bilgi: Bağlama göre değişir. Günlük düzeyine bağlı olarak bilgi, uyarı veya hata olabilir. İstatistik kaydı, uyarılar için uyarı veya hata için hata istatistikleri olabilir.
- treq - Etkinliği tanımlar. Bu durumda, isteği hedefleyin.
- m - Hedef istekte kullanılan HTTP fiili.
- u - URL'nin temel yolu izleyen bölümü.
- h: Arka uç hedefinin ana makine ve bağlantı noktası numarası.
- i: Günlük girişinin kimliği. Dört etkinlik girişinin tümü bu kimliği paylaşır.
3. Hedeften gelen yanıt örneği
1436403888672 info tres s=200, d=7, i=0
1436403888651 - Unix tarih damgası
- bilgi: Bağlama göre değişir. Günlük düzeyine bağlı olarak bilgi, uyarı veya hata olabilir. İstatistik kaydı, uyarılar için uyarı veya hata için hata istatistikleri olabilir.
- tres: Etkinliği tanımlar. Bu durumda, hedef yanıt.
- s: HTTP yanıt durumu.
- d - Milisaniye cinsinden süre. Hedef tarafından API çağrısı için harcanan süredir.
- i: Günlük girişinin kimliği. Dört etkinlik girişinin tümü bu kimliği paylaşır.
4. İstemciye giden yanıt örneği
1436403888676 info res s=200, d=11, i=0
1436403888651 - Unix tarih damgası
- bilgi: Bağlama göre değişir. Günlük düzeyine bağlı olarak bilgi, uyarı veya hata olabilir. İstatistik kaydı, uyarılar için uyarı veya hata için hata istatistikleri olabilir.
- res - Etkinliği tanımlar. Bu durumda istemciye yanıt verilir.
- s: HTTP yanıt durumu.
- d - Milisaniye cinsinden süre. Bu, hedef API'nin ve Edge Microgateway'in harcadığı süre de dahil olmak üzere API çağrısı için harcanan toplam süreyi ifade eder.
- i: Günlük girişinin kimliği. Dört etkinlik girişinin tümü bu kimliği paylaşır.
Günlük dosyası programı
Günlük dosyaları, rotate_interval yapılandırma özelliği tarafından belirtilen aralıklarla döndürülür. Rotasyon aralığı sona erene kadar girişler aynı günlük dosyasına eklenmeye devam eder. Ancak, Edge Mikro Ağ Geçidi her yeniden başlatıldığında yeni bir UID alır ve bu UID ile yeni bir günlük dosyası grubu oluşturur. Ayrıca bkz. İyi günlük dosyası bakım uygulamaları.
Edge Mikro Ağ Geçidi yapılandırma referansı
Yapılandırma dosyasının konumu
Bu bölümde açıklanan yapılandırma özellikleri, Edge Microgateway yapılandırma dosyasında bulunur. Yapılandırma değişiklikleri yapmayla ilgili ayrıntılar için Yapılandırma değişiklikleri yapma başlıklı makaleye bakın.
Edge_config özellikleri
Bu ayarlar, Edge Microgateway örneği ile Apigee Edge arasındaki etkileşimi yapılandırmak için kullanılır.
- bootstrap: (varsayılan: yok) Apigee Edge'de çalışan Edge Microgateway'e özgü bir hizmeti işaret eden URL. Edge Microgateway, Apigee Edge ile iletişim kurmak için bu hizmeti kullanır. Bu URL, herkese açık/özel anahtar çiftini oluşturma komutunu yürüttüğünde döndürülür:
edgemicro genkeys
. Ayrıntılar için Edge Microgateway'i kurma ve yapılandırma konusuna bakın. - jwt_public_key: (varsayılan: none) Apigee Edge'de dağıtılan Edge Microgateway proxy'sine işaret eden bir URL. Bu proxy, istemcilere imzalı erişim jetonları vermek için kimlik doğrulama uç noktası görevi görür. Bu URL, proxy'yi dağıtma komutunu yürütürken döndürülür: edgemicro yapılandırır. Ayrıntılar için Edge Microgateway'i kurma ve yapılandırma konusuna bakın.
Edgemicro özellikleri
Bu ayarlar, Edge Mikro Ağ Geçidi işlemini yapılandırır.
- port: (varsayılan: 8000) Edge Microgateway işleminin dinlediği bağlantı noktası numarası.
- max_connections: (varsayılan: -1) Edge Mikro Ağ Geçidi'nin alabileceği maksimum eş zamanlı gelen bağlantı sayısını belirtir. Bu sayı aşılırsa aşağıdaki durum döndürülür:
res.statusCode = 429; // Too many requests
- max_connections_hard: (varsayılan: -1) Edge Microgateway'in bağlantıyı kapatmadan önce alabileceği maksimum eş zamanlı istek sayısı. Bu ayar, hizmet reddi saldırılarını engellemek için tasarlanmıştır. Genellikle bu değeri max_connects değerinden büyük bir sayıya ayarlayın.
-
günlük kaydı:
-
level: (varsayılan: hata)
- info - Edge Microgateway örneği üzerinden gelen tüm istekleri ve yanıtları günlüğe kaydeder.
- warn: Yalnızca uyarı mesajlarını günlüğe kaydeder.
- error - Yalnızca hata iletilerini günlüğe kaydeder.
- dir: (varsayılan: /var/tmp) Günlük dosyalarının depolandığı dizin.
- stats_log_interval: (varsayılan: 60) İstatistik kaydının API günlük dosyasına yazıldığı aralık (saniye cinsinden).
- rotate_interval: (varsayılan: 24) Günlük dosyalarının döndürüldüğü saat cinsinden aralık.
-
level: (varsayılan: hata)
- eklentiler: Eklentiler, Edge Mikro Ağ Geçidi'ne işlev ekler. Eklenti geliştirmeyle ilgili ayrıntılı bilgi için Özel eklentiler geliştirme sayfasına bakın.
- dir: ./gateway dizininden ./plugins dizinine giden göreli bir yol veya mutlak bir yol.
- sequence: Edge Microgateway örneğinize eklenecek eklenti modüllerinin listesi. Modüller burada belirtildikleri sırayla yürütülür.
-
debug: Edge Mikro Ağ Geçidi işlemine uzaktan hata ayıklama ekler.
- bağlantı noktası: Dinlenecek bağlantı noktası numarası. Örneğin, IDE hata ayıklayıcınızı bu bağlantı noktasını dinleyecek şekilde ayarlayın.
- args: Hata ayıklama işlemine yönelik bağımsız değişkenler. Örneğin:
args --nolazy
- config_change_poll_interval: (varsayılan: 600 saniye) Edge Microgateway, düzenli olarak yeni bir yapılandırma yükler ve herhangi bir değişiklik olursa yeniden yükleme gerçekleştirir. Yoklama, Edge'de yapılan tüm değişiklikleri (ürünler, mikro ağ geçidini fark eden proxy'ler vb.) ve yerel yapılandırma dosyasında yapılan değişiklikleri alır.
- disable_config_poll_interval: (varsayılan: false) Otomatik değişiklik yoklamayı devre dışı bırakmak için true olarak ayarlayın.
başlık özellikleri
Bu ayarlar belirli HTTP üstbilgilerinin nasıl ele alınacağını yapılandırır.
- x-forwarded-for: (varsayılan: true) x-forwarded-for üstbilgilerinin hedefe iletilmesini önlemek için false olarak ayarlayın.
- x-forwarded-host: (varsayılan: true) x-forwarded-host başlıklarının hedefe aktarılmasını önlemek için false olarak ayarlayın.
- x-request-id: (varsayılan: true) x-request-id üstbilgilerinin hedefe iletilmesini önlemek için false olarak ayarlayın.
- x-Response-time: (varsayılan: true) x-Response-time başlıklarının hedefe aktarılmasını önlemek için false olarak ayarlayın.
- via: (varsayılan: true) Üstbilgiler aracılığıyla hedefe iletilmesini önlemek için false olarak ayarlayın.
oauth özellikleri
Bu ayarlar, istemci kimlik doğrulamasının Edge Mikro Ağ Geçidi tarafından nasıl zorunlu kılınacağını yapılandırır.
- allowNoAuthorization: (varsayılan: false) Doğru değerine ayarlanırsa API çağrılarının herhangi bir Yetkilendirme başlığı olmadan Edge Mikro Ağ Geçidi'nden geçmesine izin verilir. Yetkilendirme üst bilgisini zorunlu kılmak için bunu false (yanlış) değerine ayarlayın (varsayılan).
- allowInvalidAuthorization: (varsayılan: false) Doğru değerine ayarlanırsa Yetkilendirme başlığında iletilen jetonun geçersiz olması veya süresinin dolması halinde API çağrılarının geçmesine izin verilir. Geçerli jetonları zorunlu kılmak için (varsayılan) bu değeri false olarak ayarlayın.
- authorization-header: (varsayılan: Yetkilendirme: Bearer) Erişim jetonunu Edge Mikro Ağ Geçidi'ne göndermek için kullanılan başlık. Hedefin başka bir amaçla Yetkilendirme başlığını kullanması gerektiği durumlarda varsayılan değeri değiştirmek isteyebilirsiniz.
- api-key-header: (varsayılan: x-api-key) Edge Mikro Ağ Geçidi'ne bir API anahtarı iletmek için kullanılan üstbilgi veya sorgu parametresinin adı. Ayrıca bkz. API anahtarı kullanma.
- keepAuthHeader: (varsayılan: false) Doğru değerine ayarlanırsa istekte gönderilen Yetkilendirme başlığı hedefe aktarılır (korunur).
Eklentiye özgü özellikler
Her bir eklentinin yapılandırılabilir özellikleriyle ilgili ayrıntılar için Eklentileri kullanma konusuna bakın.
Proxy'leri filtreleme
Bir Edge Microgateway örneğinin hangi mikro ağ geçidi duyarlı proxy'leri işleyeceğini filtreleyebilirsiniz.
Edge Mikro Ağ Geçidi başladığında, ilişkili olduğu kuruluştaki mikro ağ geçidi duyarlı tüm proxy'leri indirir. Mikro ağ geçidinin hangi proxy'leri işleyeceğini sınırlamak için aşağıdaki yapılandırmayı kullanın. Örneğin, bu yapılandırma, mikro ağ geçidinin işleyeceği proxy'leri üç taneyle sınırlandırır: edgemicro_proxy-1
, edgemicro_proxy-2
ve edgemicro_proxy-3
:
proxies: - edgemicro_proxy-1 - edgemicro_proxy-2 - edgemicro_proxy-3
Analiz verilerini maskeleme
Aşağıdaki yapılandırma, istek yolu bilgilerinin Edge analizinde gösterilmesini engeller. İstek URI'sını ve/veya istek yolunu maskelemek için mikro ağ geçidi yapılandırmasına aşağıdakileri ekleyin. URI'nın, isteğin ana makine adı ve yol bölümlerinden oluştuğunu unutmayın.
analytics: mask_request_uri: 'string_to_mask' mask_request_path: 'string_to_mask'
Hata Ayıklama ve Sorun Giderme
Hata ayıklayıcıya bağlanma
Edge Microgateway'i düğüm inceleyici gibi bir hata ayıklayıcıyla çalıştırabilirsiniz. Bu işlem, özel eklentilerle ilgili sorunları gidermek ve hata ayıklamak için yararlıdır.
- Edge Microgateway'i hata ayıklama modunda yeniden başlatın. Bunu yapmak için, başlat komutunun başına
DEBUG=*
ifadesini ekleyin. Örneğin:
DEBUG=* edgemicro start -o myorg -e test -k db4e9e8a95aa7fabfdeacbb1169d0a8cbe42bec19c6b98129e02 -s 6e56af7c1b26dfe93dae78a735c8afc9796b077d105ae5618ce7ed
- Hata ayıklayıcınızı başlatın ve hata ayıklama işlemi için bağlantı noktası numarasını dinleyecek şekilde ayarlayın.
- Artık Edge Microgateway kodu üzerinde adım adım çalışabilir, kesme noktaları ayarlayabilir, ifadeler izleyebilir ve daha pek çok işlem yapabilirsiniz.
Hata ayıklama moduyla ilgili standart Node.js işaretlerini belirtebilirsiniz. Örneğin --nolazy
, eşzamansız kodda hata ayıklamaya yardımcı olur.
Günlük dosyaları kontrol ediliyor
Sorun yaşıyorsanız, yürütme ayrıntıları ve hata bilgileri için günlük dosyalarını incelediğinizden emin olun. Ayrıntılar için Günlük dosyalarını yönetme sayfasına bakın.
API anahtarı güvenliğini kullanma
API anahtarları, Edge Microgateway'e istekte bulunan istemcilerin kimliğini doğrulamak için basit bir mekanizma sağlar. Edge Microgateway kimlik doğrulama proxy'sini içeren bir Apigee Edge ürününden Tüketici Anahtarı (İstemci Kimliği olarak da adlandırılır) değerini kopyalayarak API anahtarı alabilirsiniz.
Anahtarların önbelleğe alınması
API anahtarları, önbelleğe alınan hamiline ait jetonlarla değiştirilir. Edge Mikro Ağ Geçidi'ne gelen isteklerde Cache-Control: no-cache
üst bilgisini ayarlayarak önbelleğe almayı devre dışı bırakabilirsiniz.
Apigee Edge Private Cloud 15.07 sürümünü kullanıyorsanız gerekli geçici çözüm
Edge Private Cloud 15.07'de API Anahtarı güvenliğini kullanmak için burada açıklanan çözümü uygulamanız gerekir. Geçici çözüm, edgemicro-auth proxy'sindeki bir Node.js dosyasındaki bir satırı değiştirmenizi ve Edge Microgateway'i yeniden başlatmanızı gerektirir.
Bu çözümü Edge kullanıcı arayüzüne uygulama
Bu prosedür, işiniz bittiğinde edgemicro start komutunu yeniden çalıştırmanızı gerektirir.
- Edge kullanıcı arayüzünde, proxy düzenleyicide Edgemicro-auth proxy'yi açın.
- Develop (Geliştir) sekmesini seçin.
- Gezgin'de, Komut Dosyaları altında, verify-api-key.js adlı JavaScript dosyasını açın.
- 109. satıra git:
api_product_list: apigeeToken.app && apigeeToken.app.apiproducts ? apigeeToken.app.apiproducts : []
- "api_product_list:" öğesinden sonraki bölümü, kullanmak istediğiniz API anahtarlarıyla ilişkilendirilmiş Ürün adlarının "sabit kodlu" bir dizisiyle değiştirin. Dolayısıyla, örneğin, "Product-1" ve "Product-2" içeren bir geliştirici uygulamasından anahtar kullanmak isterseniz satırı şu şekilde kodlarsınız:
api_product_list: ["Product-1", "Product-2"]
- Kaydet'i tıklayın.
- edgemicro start komutunu yürütün.
Yerel Edge Mikro Ağ Geçidi kod tabanında uygulayın
Bu işlem için Edgemicro configure komutunu ve ardından edgemicro start komutunu yeniden çalıştırmanız gerekir.
<microgateway-root-dir>/edge/auth/api/controllers/verify-api-key.js
dosyasını açın. Burada<microgateway-root-dir>
,npm install
komutunu çalıştırdığınızda Edge Microgateway'in yüklü olduğu dizindir.- 109. satıra git:
api_product_list: apigeeToken.app && apigeeToken.app.apiproducts ? apigeeToken.app.apiproducts : []
- "api_product_list:" öğesinden sonraki bölümü, kullanmak istediğiniz API anahtarlarıyla ilişkilendirilmiş Ürün adlarının "sabit kodlu" bir dizisiyle değiştirin. Dolayısıyla, örneğin, "Product-1" ve "Product-2" içeren bir geliştirici uygulamasından anahtar kullanmak isterseniz satırı şu şekilde kodlarsınız:
api_product_list: ["Product-1", "Product-2"]
- Dosyayı kaydedin.
- edgemicro configuration komutunu yürütün. (Alternatif olarak, Edge Private Cloud kullanıyorsanız edgemicro private configuration'ı seçebilirsiniz.) Bu komut, Edgemicro-auth proxy'sini yeniden dağıtır.
- edgemicro start komutunu yürütün.
OAuth2 jeton güvenliğini kullanma
Proxy istekleriyle OAuth jetonu kullanma hakkında ayrıntılı bilgi için Secure Edge Mikro Ağ Geçidi başlıklı makaleye bakın.
API anahtarı kullanma
API anahtarlarını proxy istekleriyle kullanma hakkında ayrıntılı bilgi için Secure Edge Mikro Ağ Geçidi sayfasına bakın.
API anahtarı adını yapılandırma
Varsayılan olarak x-api-key
, API anahtarı başlığı veya sorgu parametresi için kullanılan addır. Bu varsayılan değeri, Yapılandırma değişiklikleri yapma bölümünde açıklandığı şekilde yapılandırma dosyasında değiştirebilirsiniz.
Örneğin, adı apiKey olarak değiştirmek için:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false api-key-header: apiKey