Ovaj tekst objašnjava dolje naveden sadržaj:
- Kada se prijaviti u node.js?
- Gdje se vrši sječa?
- Kako implementirati evidentiranje u Node.js?
- Implementirajte prijavu u node.js pomoću metode “console.log()”.
- Implementirajte prijavu u node.js pomoću metode “console.warn()”.
- Implementirajte prijavu u node.js pomoću metode “console.error()”.
- Implementirajte prijavu u node.js pomoću metode “console.table()”.
- Implementirajte prijavu u node.js pomoću 'Modula za otklanjanje pogrešaka'.
- Implementirajte prijavu u node.js pomoću 'Winston paketa'.
Kada se prijaviti u node.js?
Slijede uobičajene razine zapisivanja u node.js:
- Info: Zadaci ili izlazi koji potvrđuju pojednostavljeno izvršavanje koda.
- Upozoriti: Događaji koje treba uzeti u obzir kako bi se izbjegli neuspjesi.
- Greška: Događaji koji rezultiraju neuspjehom izvršenja koda.
- Debug: Ovu razinu uglavnom koriste programeri.
Gdje se vrši sječa?
Događaji zapisnika mogu se staviti u red čekanja i više slušatelja može slušati red čekanja i pisati u bilo koji dnevnik koji je potreban. Prije finaliziranja mjesta za prijavu, trebalo bi znati da se ciljna metodologija može nositi s više poruka zapisnika. Slijede neke od uobičajenih lokacija dnevnika:
- stdout
- stderr
- konzola
Takav je da osnovni “ konzola.log() ' i ' konzola.info() ” metode prijave u “ stdout ”. Međutim ' console.warn() ' i ' console.error() ” metode prijave u “ stderr ”. Ove metode prikazuju izlaz na konzoli. U prednjem dijelu, ovo će biti konzola alata programera.
Kako implementirati evidentiranje u Node.js?
Analiza potrebe za sječom u različitim situacijama ključna je za provedbu odgovarajućeg pristupa sječi. Zapisivanje u node.js može se implementirati putem dolje navedenih pristupa:
- “ konzola.log() ” Metoda.
- “ console.warn() ” Metoda.
- “ console.error() ” Metoda.
- “ console.table() ” Metoda.
- Modul za uklanjanje pogrešaka.
- Winston paket.
Pristup 1: Implementirajte prijavu u node.js pomoću metode “console.log()”.
' konzola.log() ” metoda prikazuje izlaz na konzoli i korisna je za testiranje funkcionalnosti koda s vremena na vrijeme.
Sintaksa
konzola. log ( nered )
U ovoj sintaksi, ' nered ” odnosi se na poruku koju treba napisati na konzolu.
Sada prijeđite na dolje navedeni blok koda koji bilježi navedene poruke na konzoli:
konzola. log ( 'Ovo je Linuxhint!' ) ;konzola. log ( 'Ovo je Node js!' ) ;
Izlaz
Iz ovog ishoda može se zaključiti da su navedene poruke prikazane na konzoli na odgovarajući način.
Pristup 2: Implementirajte prijavu u node.js pomoću metode “console.warn()”.
' console.warn() ” prikazuje poruku upozorenja na konzoli.
Sintaksa
konzola. upozoriti ( nered )U navedenoj sintaksi, ' nered ” označava poruku (također prilagođenu) koja će se prikazati na konzoli.
Sada prijeđite na sljedeći redak koda koji prikazuje prilagođenu poruku upozorenja uz pomoć ' console.warn() ” metoda:
konzola. upozoriti ( 'Ovo je upozorenje!' ) ;Izlaz
Kao što se vidi, navedeno prilagođeno upozorenje prikazano je na odgovarajući način.
Pristup 3: Implementirajte prijavu u node.js pomoću metode “console.error()”.
Ova metoda ispisuje poruku o pogrešci u konzolu.
Sintaksa
konzola. greška ( [ podaci ] [ , ... argumenti ] )U ovoj sintaksi:
- “ podaci ” odnosi se na primarnu poruku.
- “ argumenti ” predstavljaju vrijednosti.
Povratna vrijednost
Ova metoda dohvaća poruku o pogrešci.
Pregled sljedećeg isječka koda koji bilježi poruku o pogrešci nakon nezadovoljenog uvjeta:
x = 150 ;ako ( x < 100 ) {
konzola. log ( 'spremno' ) ;
}
drugo {
konzola. greška ( 'Neodgovarajući broj' ) ;
}
Prema ovom kodu:
- Inicijalizirajte cijeli broj koji će se analizirati za uvjete.
- Nakon toga primijenite ' ako ” tako da ako je inicijalizirani cijeli broj manji od “100”, prikazuje se navedena poruka.
- Inače, ' drugo ' naredba izvršava poruku o pogrešci u ' console.error() ” metoda.
Izlaz
Ovaj izlaz potvrđuje da se nakon nezadovoljenog uvjeta prilagođena poruka o pogrešci prikazuje na konzoli u skladu s tim.
Pristup 4: Implementirajte prijavu u node.js pomoću metode “console.table()”.
Ova metoda stvara i prikazuje tablicu na konzoli.
Sintaksa
konzola. stol ( td, tc )Ovdje, ' td ” predstavlja podatke tablice, a “ tc ” odnosi se na niz stupaca tablice.
Sada prođite kroz naredbu koda u nastavku koja stvara tablicu dvaput dodjeljivanjem zasebnog indeksa dodijeljenim vrijednostima tipova video podataka:
konzola. stol ( [ { x : 10 , a : 'Harry' } , { x : petnaest , a : 'S' } ] ) ;Izlaz
Pristup 5: Implementirajte prijavu u node.js pomoću 'Modula za otklanjanje pogrešaka'
Ovaj se modul može koristiti za bilježenje dodatnih informacija o statusu web međuprograma, npr. Express, Koa, itd. kada pozadina dobije internetski zahtjev. Middleware se stavlja u cjevovod zahtjeva.
Slijede pristupi za postavljanje srednjeg softvera za bilježenje:
Primjer 1: Postavljanje međuwarea za bilježenje iz aplikacije
' app.use() ” montira ciljnu funkciju međuopreme na navedenu stazu.
Sintaksa
aplikacija koristiti ( pt, cb )U gore navedenoj sintaksi:
- “ točka ” odnosi se na put za koji se treba pozvati funkcija međuprograma.
- “ cb ” odgovara funkciji(ama) međuprograma.
Slijedi demonstracija koda koja postavlja međuware za bilježenje putem aplikacije i opisane metode:
konst aplikacija = izraziti ( )konst logMiddleware = zahtijevati ( 'my-logging-middleware' )
aplikacija koristiti ( logMiddleware )
U ovom kodu izradite Express aplikaciju i uključite ' my-logging-middleware ” za početak rada s međuverom za bilježenje. Na kraju primijenite ' app.use() ” za montiranje ciljne funkcije međuopreme na navedenoj stazi.
Primjer 2: Postavljanje međuwarea za bilježenje iz aplikacije putem usmjerivača
' router.use() ” funkcija montira međuprogram za rute koje poslužuje ciljni usmjerivač.
Sintaksa
ruter. koristiti ( za, funk )U ovoj sintaksi:
- “ točka ” odnosi se na put međuopreme.
- “ funk ” odgovara funkciji proslijeđenoj kao povratni poziv.
Donji primjer postavlja posredni softver za bilježenje uz pomoć objekta usmjerivača i ' router.use() ” funkcija:
konst ruter = izraziti. Usmjerivač ( )konst rtLoggingMiddleware = zahtijevati ( 'my-route-logging-middleware' )
ruter. koristiti ( rtLoggingMiddleware )
U ovom kodu:
- ' express.Router() ” stvara novi objekt usmjerivača.
- Nakon toga uključite ' moja-ruta-zapisivanje-srednji program ” i isto tako upotrijebite „ router.use() ” za montiranje međuopreme za rute koje opslužuje ciljni usmjerivač.
Pristup 6: Implementirajte prijavu u node.js pomoću 'Winston paketa'
Ovaj određeni paket uključuje opcije pohrane, višestruke razine dnevnika, upite i profiler. Slijedi demonstracija koda koja implementira zapisivanje putem ovog pristupa:
konst x = izraziti ( )konst uključiti = zahtijevati ( 'winston' )
konst konzolaTransport = novi uključiti. transportira . Konzola ( )
konst opts = {
transportira : [ konzolaTransport ]
}
konst drvosječa = novi uključiti. createLogger ( opts )
funkcija displayRequest ( req, res, next ) {
drvosječa. info ( zahtijevati url )
Sljedeći ( )
}
x. koristiti ( displayRequest )
funkcija displayError ( err, req, res, next ) {
drvosječa. greška ( pogriješiti )
Sljedeći ( )
}
x. koristiti ( displayError )
U ovom kodu:
- Više prijenosa može se postaviti s filtriranjem i mogu se postaviti prilagođeni formateri.
- Također, višestruke instance zapisivača navedene su u različitim funkcijama, tj. ' logger.info() ' i ' logger.error() ”.
- Ovi zapisivači prikazuju informacije, odnosno poruke o pogrešci.
- U ovom kodu bilježi se samo traženi URL.
Zapisivači uzimaju dolje navedene parametre:
Ime | Zadano | Opis |
format | Winston.format.json | Formatira info poruke |
tihi | lažno | Ako je istina, svi dnevnici se obustavljaju. |
exitOnError | Pravi | Ako je lažno, riješene iznimke ne uzrokuju process.exit |
razine | Winston.config.npm.levels | Razine se odnose na prioritete dnevnika. |
Zaključak
Zapisivanje u node.js može se implementirati putem ' konzola.log() ' metoda, ' console.warn() ' metoda, ' console.error() ' metoda, ' console.table() ' metoda, ' Modul za uklanjanje pogrešaka ', ili putem ' Winston paket ”. Metode konzole prikazuju informacije i poruke o greškama. Modul za otklanjanje pogrešaka bilježi dodatne informacije o statusu web međuprograma, a paket Winston sadrži opcije pohrane i različite razine zapisnika.