Kirjauksen toteuttaminen Node.js:ssä

Kirjauksen Toteuttaminen Node Js Ssa



' Kirjaaminen ” node.js:ssa on tärkeä rooli verkkosivuston kehitysprosessin koko elinkaaren ylläpitämisessä. Se on sellainen, että kirjaus on yleisin toiminto, jota kehittäjät tekevät ajoittain analysoidakseen kooditoimintoja datan analysoimiseksi sekä koodatakseen ja ratkaistakseen virheet koodianalyysin perusteella.

Tämä kirjoitus selittää alla olevan sisällön:

Milloin kirjautua sisään node.js:ään?

Seuraavat ovat yleiset node.js:n kirjaustasot:







  • Tiedot: Tehtävät tai lähdöt, jotka vahvistavat virtaviivaistetun koodin suorittamisen.
  • Varoittaa: Tapahtumat, jotka on otettava huomioon epäonnistumisten välttämiseksi.
  • Virhe: Tapahtumat, jotka johtavat koodin suorittamisen epäonnistumiseen.
  • Virheenkorjaus: Tätä tasoa käyttävät enimmäkseen kehittäjät.

Missä hakkuut suoritetaan?

Lokitapahtumat voidaan asettaa jonoon ja useat kuuntelijat voivat kuunnella jonoa ja kirjoittaa mihin tahansa lokiin. Ennen kuin päätät kirjautumispaikan, on tiedettävä, että kohdemetodologia pystyy käsittelemään useita lokiviestejä. Seuraavassa on joitain yleisiä lokien sijainteja:



  • stdout
  • stderr
  • konsoli

Se on sellainen, että perus' console.log() ' ja ' konsoli.info() ' menetelmät kirjaudu sisään ' stdout ”. Kuitenkin ' console.warn() ' ja ' console.error() ' menetelmät kirjaudu sisään ' stderr ”. Nämä menetelmät näyttävät tulosteen konsolissa. Käyttöliittymässä tämä on ohjelmoijan työkalukonsoli.



Kuinka kirjautuminen toteutetaan Node.js:ssä?

Kirjaustarpeen analysointi eri tilanteissa on ratkaisevan tärkeää vastaavan kirjaustavan toteuttamiseksi. Node.js-sisäänkirjautuminen voidaan toteuttaa seuraavilla tavoilla:





  • ' console.log() ”Menetelmä.
  • ' console.warn() ”Menetelmä.
  • ' console.error() ”Menetelmä.
  • ' konsoli.taulukko() ”Menetelmä.
  • Virheenkorjausmoduuli.
  • Winston-paketti.

Lähestymistapa 1: Toteuta kirjautuminen node.js:iin käyttämällä 'console.log()'-menetelmää

' console.log() ” -menetelmä näyttää tulosteen konsolissa ja on hyödyllinen kooditoimintojen testaamiseen silloin tällöin.

Syntaksi



konsoli. Hirsi ( sotku )

Tässä syntaksissa ' sotku ” viittaa konsoliin kirjoitettavaan viestiin.

Siirry nyt alla annettuun koodilohkoon, joka kirjaa toimitetut viestit konsoliin:

konsoli. Hirsi ( 'Tämä on Linuxvintti!' ) ;

konsoli. Hirsi ( 'Tämä on Node js!' ) ;

Lähtö

Tästä tuloksesta voidaan päätellä, että ilmoitetut viestit näkyvät konsolissa asianmukaisesti.

Lähestymistapa 2: Toteuta kirjautuminen node.js:iin käyttämällä 'console.warn()'-menetelmää

' console.warn() ” -menetelmä näyttää varoitusviestin konsoliin.

Syntaksi

konsoli. varoittaa ( sotku )

Annetussa syntaksissa ' sotku ” osoittaa viestin (myös mukautetun), joka näytetään konsolissa.

Siirry nyt seuraavalle koodiriville, joka näyttää mukautetun varoitusviestin ' console.warn() 'menetelmä:

konsoli. varoittaa ( 'Tämä on varoitus!' ) ;

Lähtö

Kuten näkyy, määritetty mukautettu varoitus näytetään asianmukaisesti.

Lähestymistapa 3: Toteuta kirjautuminen node.js:iin käyttämällä 'console.error()'-menetelmää

Tämä menetelmä kirjoittaa virheilmoituksen konsoliin.

Syntaksi

konsoli. virhe ( [ tiedot ] [ ,... argumentteja ] )

Tässä syntaksissa:

  • ' tiedot ” viittaa ensisijaiseen viestiin.
  • ' argumentteja ” edustavat arvoja.

Palautusarvo

Tämä menetelmä hakee virheilmoituksen.

Seuraavan koodinpätkän yleiskatsaus, joka kirjaa virheilmoituksen tyytymättömästä tilasta:

x = 150 ;
jos ( x < 100 ) {
konsoli. Hirsi ( 'Hyvä mennä' ) ;
}
muu {
konsoli. virhe ( 'Sopimaton numero' ) ;
}

Tämän koodin mukaan:

  • Alusta ehtoja varten analysoitava kokonaisluku.
  • Käytä sen jälkeen ' jos ”-lausetta siten, että jos alustettu kokonaisluku on pienempi kuin ”100”, määritetty viesti näytetään.
  • Muuten ' muu '-lause suorittaa virheilmoituksen ' console.error() ”menetelmä.

Lähtö

Tämä tulos vahvistaa, että tyytymättömässä tilassa mukautettu virheilmoitus näytetään konsolissa vastaavasti.

Lähestymistapa 4: Toteuta kirjautuminen node.js:iin käyttämällä 'console.table()'-menetelmää

Tämä menetelmä luo ja näyttää taulukon konsolissa.

Syntaksi

konsoli. pöytä ( td, tc )

Täällä, ' td ' edustaa taulukon tietoja ja ' tc ” viittaa taulukon sarakkeiden joukkoon.

Käy nyt läpi alla oleva koodilause, joka luo taulukon määrittämällä erillisen indeksin videotietotyyppien määritetyille arvoille kahdesti:

konsoli. pöytä ( [ { x : 10 , a : 'Harry' } , { x : viisitoista , a : 'Kanssa' } ] ) ;

Lähtö

Lähestymistapa 5: Toteuta kirjautuminen node.js:ään käyttämällä 'Debug Module'

Tätä moduulia voidaan käyttää lisätietojen kirjaamiseen web-väliohjelmiston (esim. Express, Koa jne.) tilasta, kun taustaohjelma vastaanottaa Internet-pyynnön. Väliohjelmisto lisätään pyyntöputkeen.

Seuraavat lähestymistavat lokikirjauksen väliohjelmiston määrittämiseen:

Esimerkki 1: Kirjausväliohjelmiston määrittäminen sovelluksesta

' app.use() ”-toiminto asentaa kohdeväliohjelmistotoiminnon määritettyyn polkuun.

Syntaksi

sovellus. käyttää ( pt, cb )

Yllä annetussa syntaksissa:

  • ' pt ” viittaa polkuun, jota varten väliohjelmistotoimintoa kutsutaan.
  • ' cb ” vastaa väliohjelmiston toimintoa/toimintoja.

Seuraavassa on koodiesittely, joka määrittää kirjaamisen väliohjelmiston sovelluksen ja käsitellyn menetelmän kautta:

konst sovellus = ilmaista ( )

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

sovellus. käyttää ( logMiddleware )

Luo tähän koodiin Express-sovellus ja lisää ' my-logging-middleware ” aloittaaksesi kirjauksen väliohjelmiston käytön. Käytä lopuksi ' app.use() ”-toiminto asentaa kohdeväliohjelmistotoiminnon määritettyyn polkuun.

Esimerkki 2: Kirjausväliohjelmiston määrittäminen sovelluksesta reitittimen kautta

' router.use() ”-toiminto asentaa väliohjelmiston kohdereitittimen kautta palveleville reiteille.

Syntaksi

reititin. käyttää ( for, func )

Tässä syntaksissa:

  • ' pt ” viittaa väliohjelmistopolkuun.
  • ' func ” vastaa takaisinsoittona välitettyä toimintoa.

Alla oleva esimerkki määrittää kirjaamisen väliohjelmiston reititinobjektin ja ' router.use() ”toiminto:

konst reititin = ilmaista. Reititin ( )

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

reititin. käyttää ( rtLoggingMiddleware )

Tässä koodissa:

  • ' express.Router() ”-toiminto luo uuden reititinobjektin.
  • Lisää sen jälkeen ' my-route-logging-middleware ' ja samoin käytä ' router.use() ”-toiminto asentaa väliohjelmiston kohdereitittimen palvelemille reiteille.

Lähestymistapa 6: Toteuta kirjautuminen node.js:iin 'Winston-paketin' avulla

Tämä paketti sisältää tallennusvaihtoehtoja, useita lokitasoja, kyselyitä ja profiloijan. Seuraavassa on koodiesittely, joka toteuttaa kirjauksen tällä lähestymistavalla:

konst x = ilmaista ( )
konst sisältää = vaatia ( 'winston' )
konst konsoliTransport = Uusi sisältää. kuljetukset . Konsoli ( )
konst opt = {
kuljetukset : [ konsoliTransport ]
}
konst metsuri = Uusi sisältää. CreateLogger ( opt )
toiminto displayRequest ( req, res, next ) {
metsuri. tiedot ( req. url )
Seuraava ( )
}
x. käyttää ( displayRequest )
toiminto displayError ( err, req, res, next ) {
metsuri. virhe ( err )
Seuraava ( )
}
x. käyttää ( displayError )

Tässä koodissa:

  • Useita siirtoja voidaan määrittää suodatuksella ja mukautettuja muotoiluja voidaan asettaa.
  • Myös useita loggerin esiintymiä on määritetty eri funktioissa, esim. logger.info() ' ja ' logger.error() ”.
  • Nämä loggerit näyttävät tiedot ja virheilmoitukset.
  • Tässä koodissa vain pyydetty URL kirjataan lokiin.

Loggerit ottavat alla annetut parametrit:

Nimi Oletus Kuvaus
muoto Winston.format.json Muotoilee infoviestit
hiljainen Väärä Jos totta, kaikki lokit keskeytyvät.
exitOnError Totta Jos epätosi, selviytyneet poikkeukset eivät aiheuta process.exit
tasot Winston.config.npm.levels Tasot viittaavat lokin prioriteetteihin.

Johtopäätös

Node.js-sisäänkirjautuminen voidaan toteuttaa ' console.log() 'menetelmä, ' console.warn() 'menetelmä, ' console.error() 'menetelmä, ' konsoli.taulukko() 'menetelmä, ' Virheenkorjausmoduuli ' tai ' Winston-paketti ”. Konsolimenetelmät näyttävät tiedot ja virheilmoitukset. Debug-moduuli kirjaa lisätietoa verkkoväliohjelmiston tilasta ja Winston-paketti sisältää tallennusvaihtoehdot ja eri lokitasot.