Node.js Hata Ayıklama

Yazıda Node.js ile geliştirme yaparken çıkan hataları bulmak ve düzeltmek için kullanılan hata ayıklayıcı ile ilgili bilgiler yer almaktadır.

Node.js ile geliştirme yaparken yazılan kodlarda sözdizimi hataları, mantıksal hatalar veya çalıştırıldığında beklenenden farklı sonuç verebilir.

Beklenmeyen bir hata oluştuğunda çoğu zaman hatanın nerede olduğu neden kaynaklandığına dair bir mesaj verilmez.

Hata ayıklamak için Node.js kurulumu ile birlikte gelen dahili hata ayıklayıcı kullanılabilir.

Kodlar hata ayıklayıcı ile çalıştırıldığında Node.js kodları adım adım çalıştırır.

Komut durdurulduğunda çalıştırılan kodların olduğu bölüme kadar değişken ve değerlerin kontrolü sağlanır.

'use strict';

const fs = require('fs');

fs.readFile('metin.txt', 'utf-8', function (error, data) {

  debugger;

  if (error) throw error;

  console.log(data);

});

Yazılan kodlar hata ayıklayıcısı ile çalıştırıldığında Node.js kodları adım adım çalıştırır ve sonraki kodun çalışması, durması, önceki kodun çalışması gibi işlemler için REPL komutlarının girilmesini bekler.

node debug index.js

Sonraki kodun çalışması için next komutu yazılır.

Komut satırına cont yazılırsa Node.js debugger anahtar kelimesine kadar kodları çalıştırır.

Kod içerisindeki değişkenin değerini kontrol etmek için hata ayıklayıcısına watch(‘degisken_adi’) yazarak değişken değerinin adım adım takip edilmesi sağlanır.

Takip edilen değişkenlerin değeri watchers komutu ile listelenir.

Hata ayıklama komutları hata ayıklama sırasında help komutu ile listelenir.

Node.js ayrıca Chrome geliştirici araçlarını kullanarak hata ayıklamaya imkan veren bir mekanizmaya sahiptir.

Chrome geliştirici araçları ile hata ayıklamak için

node --inspect --debug-brk index.js

komutu kullanılır.

Komutu çalıştırdıktan sonra verilen Chrome geliştirici adresini Google Chrome tarayıcısından açarak hata ayıklama işlemi yapılabilir.

Komutu çalıştırdıktan sonra Google Chrome tarayıcısına

about:inspect

veya

chrome://inspect

adresini yazarak hata ayıklama aracına ulaşılabilir.

Hata ayıklama ayrıca çeşitli gelişmiş geliştirme ortamı (Visual Studio, WebStorm vb.) sağlayan editörler tarafından yapılabilir.

Node.js Derslerine buradan ulaşabilirsiniz…

Hayırlı günler dilerim.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!