Node.js proxy'lerinde hata ayıklama ve sorun giderme

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Proxy'ye eklediğiniz Node.js kodunun dağıtım yapmadan önce çalıştığından emin olmanız önerilir. Edge'e iletebilirim. Bu bölümde, Node.js içeren proxy'lerde hata ayıklama ve sorun giderme yöntemleri ele alınmaktadır. uygulamalar hakkında bilgi edindiniz.

Bağlantı havuzu boyutu şu değere artırılıyor: performansı artırma

Performansın yavaş olduğunu fark ederseniz varsayılan değeri artırarak sorunu çözebilirsiniz maxSockets ile Node.js bağlantı havuzu boyutu veya devre dışı bırakarak yuva havuzlama ile birlikte çalışır. Daha fazla bilgi ve örnek kod için Node.js dosyasına bakın. Performans İpuçları: Apigee Topluluğu'nda Yuva Havuzu.

Node.js günlüklerini görüntüleme

Node.js uygulamanızla ilgili günlük bilgilerini görüntülemek için:

  1. Ana API proxy'leri sayfasında görüntülemek istediğiniz proxy'yi tıklayın.
  2. Seçilen proxy'nin özet sayfasında Node.js Günlükleri'ni araç çubuğunun sağ tarafındaki
ziyaret edin.

Günlükler sayfasında, aşağıda gösterildiği gibi, görüntülenecek bir günlük zaman aralığı belirleyebilirsiniz. Günlükler HTTP yöntemi çağrıları, çağrıların başarılı veya başarısız olması, console.log mesajları vb. Arama terimi girin dizesini içeren tüm günlük girişlerini görüntülemenizi sağlar.

İzleme aracını kullanma

İzleme aracı, genel proxy hata ayıklaması için yararlıdır. izleme aracı için Trace'i kullanma aracını kullanın.

Yazdırma konsolu çıkışı

Node.js kodunuza console.log ifadeleri yerleştirebilir ve çıktıyı izde görüntüleyebilirsiniz aracını kullanın. Örneğin, aşağıdaki ifade değişkenin değerini yazdırır config.user:

console.log('Logging in as %s', config.username);

İzleme aracında console.log mesajlarının çıkışını görüntülemek için şu komutu çalıştırın: İzleme Aracı'nda API'nizi seçin ve Exit from all İşlemler 'i tıklayarak çıktı panelini açın:

Aşağıdaki kodu yürüttüğünüz varsayıldığında...

var http = require('http');

console.log('node.js application starting...');

var svr = http.createServer(function(req, resp) {
    resp.end('Hello, World!');
});

svr.listen(9000, function() {
    console.log('Node HTTP server is listening');
});

... panelde konsol ifadeleri görünür:

Nginx hedef zaman aşımı ayarlarını yapılandırma

Proxy olarak Nginx kullanıyorsanız ve "Hatalı Ağ Geçidi"ni görüyorsanız hatasını öğrenmek için Nginx proxy'sini artırmayı deneyin zaman aşımı yapılandırmasını burada bulabilirsiniz:

Örneğin:

proxy_connect_timeout       60;
proxy_read_timeout          120;

Sunucunun yanıt vermesi için ne kadar süre geçtiğine bağlı olarak ideal zaman aşımını belirleyebilirsiniz yapılandırmanın üç yolu vardır. Örneğin, 45-60 saniyelik bir okuma zaman aşımı, makul bir tampon.

Apigee hedef zaman aşımı ayarlarını yapılandırma

Apigee varsayılan zaman aşımı değerlerini HttpTargetConnection öğesinde de yapılandırabilirsiniz yapılandırdığınızdan emin olun. Varsayılan değerler şunlardır:

connect.timeout.millis - 60 seconds
io.timeout.millis - 120 seconds
<HTTPTargetConnection>
    <Properties>
        <Property name="connect.timeout.millis">5000</Property>
        <Property name="io.timeout.millis">5000</Property>
    </Properties>
    <URL>http://www.google.com</URL>
</HTTPTargetConnection>

Uç nokta özellikleri referansı bölümünü de inceleyin.

Daha fazla bilgi için

Hata ayıklama hakkında daha fazla bilgi edinmek için aşağıdaki konulara göz atın:

Sonraki adımlar

Apigee Edge'de Node.js modülü desteği hakkında bilgi edinmek ve HTTP/HTTPS, TLS ve diğer gelişmiş konular için destek başlıklı makaleyi inceleyin: Uçta yer alan desteği anlama daha fazla bilgi edinebilirsiniz.