Kako implementirati beleženje v Node.js

Kako Implementirati Belezenje V Node Js



Sečnja ” v node.js igra ključno vlogo pri vzdrževanju celotnega življenjskega cikla postopka razvoja spletnega mesta. Beleženje je najpogostejša funkcija, ki jo izvajajo razvijalci za občasno analizo funkcij kode za analizo podatkov ter kodiranje in odpravljanje napak na podlagi analize kode.

Ta zapis pojasnjuje spodaj navedeno vsebino:

Kdaj se prijaviti v node.js?

Spodaj so pogoste ravni beleženja v node.js:







  • Informacije: Naloge ali izhodi, ki potrjujejo poenostavljeno izvajanje kode.
  • Opozorilo: Dogodki, ki jih je treba upoštevati, da bi se izognili napakam.
  • Napaka: Dogodki, ki povzročijo neuspeh pri izvajanju kode.
  • Odpravljanje napak: To raven večinoma uporabljajo razvijalci.

Kje se izvaja sečnja?

Dogodke v dnevniku lahko postavite v čakalno vrsto in več poslušalcev lahko posluša čakalno vrsto in piše v kateri koli dnevnik, ki je potreben. Preden se dokončno odločimo, kam se prijaviti, je treba vedeti, da se lahko ciljna metodologija spopade z več sporočili dnevnika. Sledi nekaj pogostih lokacij dnevnika:



  • stdout
  • stderr
  • konzola

Tako je, da je osnovna ' console.log() « in » konzola.info() » metode se prijavijo v » stdout ”. Vendar pa je ' console.warn() « in » console.error() » metode se prijavijo v » stderr ”. Te metode prikažejo izhod na konzoli. V sprednjem delu bo to orodna konzola programerja.



Kako implementirati beleženje v Node.js?

Analiza potrebe po sečnji v različnih situacijah je ključnega pomena za izvajanje ustreznega pristopa k sečnji. Beleženje v node.js je mogoče izvesti s spodaj navedenimi pristopi:





  • console.log() ” Metoda.
  • console.warn() ” Metoda.
  • console.error() ” Metoda.
  • console.table() ” Metoda.
  • Modul za odpravljanje napak.
  • Winston paket.

Pristop 1: Izvedite beleženje v node.js z uporabo metode »console.log()«.

' console.log() ” prikaže izhod na konzoli in je v pomoč pri občasnem testiranju funkcionalnosti kode.

Sintaksa



konzola. dnevnik ( nered )

V tej sintaksi ' nered ” se nanaša na sporočilo, ki bo zapisano v konzolo.

Zdaj nadaljujte s spodnjim blokom kode, ki beleži navedena sporočila na konzoli:

konzola. dnevnik ( 'To je Linuxhint!' ) ;

konzola. dnevnik ( 'To je Node js!' ) ;

Izhod

Iz tega izida lahko sklepamo, da so navedena sporočila ustrezno prikazana na konzoli.

Pristop 2: Izvedite beleženje v node.js z uporabo metode »console.warn()«.

' console.warn() ” prikaže opozorilno sporočilo na konzoli.

Sintaksa

konzola. opozoriti ( nered )

V dani sintaksi je ' nered ” označuje sporočilo (tudi po meri), ki bo prikazano na konzoli.

Zdaj pojdite na naslednjo kodno vrstico, ki prikaže opozorilno sporočilo po meri s pomočjo » console.warn() ” metoda:

konzola. opozoriti ( 'To je opozorilo!' ) ;

Izhod

Kot vidite, je podano opozorilo po meri prikazano ustrezno.

Pristop 3: Izvedite beleženje v node.js z uporabo metode »console.error()«.

Ta metoda zapiše sporočilo o napaki v konzolo.

Sintaksa

konzola. napaka ( [ podatke ] [ , ... argumenti ] )

V tej sintaksi:

  • podatke ” se nanaša na primarno sporočilo.
  • argumenti ” predstavljajo vrednote.

Povratna vrednost

Ta metoda pridobi sporočilo o napaki.

Pregled naslednjega delčka kode, ki zabeleži sporočilo o napaki ob neizpolnjenem pogoju:

x = 150 ;
če ( x < 100 ) {
konzola. dnevnik ( 'dobro' ) ;
}
drugače {
konzola. napaka ( 'Neprimerna številka' ) ;
}

Glede na to kodo:

  • Inicializirajte celo število, ki bo analizirano za pogoje.
  • Po tem uporabite » če ” tako, da če je inicializirano celo število manjše od “100”, se prikaže navedeno sporočilo.
  • V nasprotnem primeru ' drugače ” izvede sporočilo o napaki v console.error() ” metoda.

Izhod

Ta izhod potrjuje, da se ob neizpolnjenem pogoju na konzoli ustrezno prikaže sporočilo o napaki po meri.

Pristop 4: Izvedite beleženje v node.js z uporabo metode »console.table()«.

Ta metoda ustvari in prikaže tabelo na konzoli.

Sintaksa

konzola. tabela ( td, tc )

Tukaj, ' td « predstavlja podatke tabele in » tc ” se nanaša na niz stolpcev tabele.

Zdaj pojdite skozi spodnji stavek kode, ki ustvari tabelo tako, da dodeljenim vrednostim tipov video podatkov dvakrat dodeli ločen indeks:

konzola. tabela ( [ { x : 10 , a : 'Harry' } , { x : petnajst , a : 'z' } ] ) ;

Izhod

Pristop 5: Izvedite prijavo v node.js z uporabo »Modula za odpravljanje napak«

Ta modul se lahko uporablja za beleženje dodatnih informacij o statusu spletne vmesne programske opreme, npr. Express, Koa itd., ko zaledje prejme internetno zahtevo. Vmesna programska oprema se postavi v cevovod zahtev.

Sledijo pristopi za nastavitev vmesne programske opreme za beleženje:

Primer 1: Nastavitev vmesne programske opreme za beleženje iz aplikacije

' app.use() ” namesti ciljno funkcijo vmesne programske opreme na določeno pot.

Sintaksa

aplikacija uporaba ( pt, cb )

V zgornji sintaksi:

  • točka ” se nanaša na pot, za katero naj se prikliče funkcija vmesne programske opreme.
  • cb ” ustreza funkciji vmesne programske opreme.

Sledi predstavitev kode, ki nastavi vmesno programsko opremo za beleženje prek aplikacije in obravnavane metode:

konst aplikacija = ekspresno ( )

konst logMiddleware = zahtevati ( 'my-logging-middleware' )

aplikacija uporaba ( logMiddleware )

V tej kodi ustvarite aplikacijo Express in vključite » vmesna programska oprema za moje-belezanje ”, da začnete delati z vmesno programsko opremo za beleženje. Na koncu uporabite » app.use() ” za namestitev ciljne funkcije vmesne programske opreme na podano pot.

Primer 2: Nastavitev vmesne programske opreme za beleženje iz aplikacije prek usmerjevalnika

' router.use() ” funkcija namesti vmesno programsko opremo za poti, ki jih streže ciljni usmerjevalnik.

Sintaksa

usmerjevalnik. uporaba ( za, funk )

V tej sintaksi:

  • točka ” se nanaša na pot vmesne programske opreme.
  • funk ” ustreza funkciji, posredovani kot povratni klic.

Spodnji primer nastavi vmesno programsko opremo za beleženje s pomočjo predmeta usmerjevalnika in » router.use() ” funkcija:

konst usmerjevalnik = ekspresno. Usmerjevalnik ( )

konst rtLoggingMiddleware = zahtevati ( 'my-route-logging-middleware' )

usmerjevalnik. uporaba ( rtLoggingMiddleware )

V tej kodi:

  • ' express.Router() ” ustvari nov objekt usmerjevalnika.
  • Po tem vključite » moja-route-logging-middleware « in prav tako uporabite » router.use() ” za namestitev vmesne programske opreme za poti, ki jih streže ciljni usmerjevalnik.

Pristop 6: Implementirajte beleženje v node.js z uporabo »paketa Winston«

Ta poseben paket vključuje možnosti shranjevanja, več ravni dnevnika, poizvedbe in profiler. Sledi predstavitev kode, ki izvaja beleženje s tem pristopom:

konst x = ekspresno ( )
konst vključiti = zahtevati ( 'winston' )
konst konzolaTransport = novo vključujejo. prevozi . Konzola ( )
konst opts = {
prevozi : [ konzolaTransport ]
}
konst drvar = novo vključujejo. createLogger ( opts )
funkcija displayRequest ( req, res, next ) {
drvar. info ( zahtevano url )
Naslednji ( )
}
x. uporaba ( displayRequest )
funkcija displayError ( err, req, res, next ) {
drvar. napaka ( napaka )
Naslednji ( )
}
x. uporaba ( displayError )

V tej kodi:

  • Nastavite lahko več prenosov s filtriranjem in nastavite oblikovalce po meri.
  • Poleg tega je več primerkov zapisovalnika podanih v različnih funkcijah, npr. logger.info() « in » logger.error() ”.
  • Ti zapisovalniki prikazujejo informacije oziroma sporočila o napakah.
  • V tej kodi se zabeleži samo zahtevani URL.

Spodnje parametre zavzamejo zapisovalniki:

Ime Privzeto Opis
format Winston.format.json Oblikuje informacijska sporočila
tiho False Če je res, so vsi dnevniki začasno ustavljeni.
exitOnError Prav Če je nastavljeno na false, obvladane izjeme ne povzročijo process.exit
stopnje Winston.config.npm.levels Ravni se nanašajo na prioritete dnevnika.

Zaključek

Beleženje v node.js je mogoče izvesti prek » console.log() ' metoda, ' console.warn() ' metoda, ' console.error() ' metoda, ' console.table() ' metoda, ' Modul za odpravljanje napak «, ali prek » Winston paket ”. Metode konzole prikažejo informacije in sporočila o napakah. Modul za odpravljanje napak beleži dodatne informacije o statusu spletne vmesne programske opreme, paket Winston pa vsebuje možnosti shranjevanja in različne ravni dnevnika.