Node.js
Chrome DevTools
Chrome DevTools ile Node.js hata ayıklamayı öğrenirsin.
Chrome DevTools ile ayıklama
Terminal yerine görsel bir arayüz istiyorsan Chrome DevTools kullanırsın. node --inspect-brk dosya.js komutu Node.js'i bir hata ayıklama sunucusu olarak başlatır. Sonra Chrome'da chrome://inspect adresini açar ve inspect bağlantısına tıklarsın.
--inspect-brk bayrağı kodu ilk satırda durdurur; böylece erken başlayan kodları yakalarsın. Yalnızca --inspect kullanırsan kod normal çalışır, ayıklayıcı bağlanana kadar durmaz. DevTools'ta kesme noktaları koymak için satır numarasının solundaki oluk (gutter) tıklanır. Değişkenler panelde canlı görünür; fare ile üzerlerine gelince değerleri genişletilir. Bu yöntem, karmaşık nesneleri görsel olarak incelemek için uygundur.
Uzaktan bağlantı
DevTools, Node.js sürecine WebSocket üzerinden bağlanır. Varsayılan bağlantı noktası (port) 9229'dur. Birden çok işlem çalıştırıyorsan --inspect-brk=9230 ile farklı bir bağlantı noktası seçersin.
Uzaktaki bir sunucuda çalışan Node.js'i ayıklamak için --inspect=0.0.0.0:9229 yazarsın; bu, dış ağdan bağlantıya izin datar (yalnızca güvenilir ağlarda). Chrome'da chrome://inspect sayfasında Configure... düğmesi ile hedef sunucuyu eklersin. Bağlandıktan sonra yerel ayıklamanın tüm olanakları (kesme noktası, değişken inceleme, çağrı yığını) uzaktan da çalışır. Bu, üretim (production) sunucusundaki bir hatayı yerel makineden ayıklamak için kullanışlıdır.
Uygulama DevTools için betik yaz
function divide(a, b) { if (b === 0) throw new Error("Sıfıra bölme"); return a / b; } tanımla. debugger; satırı ekle. console.log("Hazır: " + divide(10, 2)) ile yazdır.
Örnek çözümü göster
function divide(a, b) {
if (b === 0) throw new Error("Sıfıra bölme");
debugger;
return a / b;
}
console.log("Hazır: " + divide(10, 2));
Kendini test et
-
İnceleme bayrağını tamamla
node --____-brk dosya.js
Cevabı göster
node --inspect-brk dosya.js
-
Parçayı rolüne eşle
- --inspect-brk
- İlk satırda durur
- chrome://inspect
- DevTools'u açar
- 9229
- Varsayılan bağlantı noktası
- WebSocket
- Bağlantı protokolü
-
DevTools arayüzünü ne açar?
chrome://inspect
- chrome://inspect
- node --version
- npm install
- node dosya.js
Cevabı göster
chrome://inspect — chrome://inspect DevTools'u açar.
Sıradaki ders: console metotları