Files
expressjs.com/it/guide/debugging.md
Sebastian Beltran 120197a97d build: apply language based on folder. (#1975)
* build: apply language based on folder.

* i18n: remove lang tag

* style: fix home style

* fixup!: fix lang 404 page

* re-add grid area

* fix zh_ch

* re add style changes
2025-07-18 08:42:12 -05:00

4.9 KiB

layout, title, description, menu, redirect_from
layout title description menu redirect_from
page Debug di Express Learn how to enable and use debugging logs in Express.js applications by setting the DEBUG environment variable for enhanced troubleshooting. guide

Debug di Express

Per visualizzare tutti i log interni utilizzati in Express, impostare la variabile di ambiente DEBUG su express:* quando si avvia l'applicazione.

$ DEBUG=express:* node index.js

Su Windows, utilizzare il comando corrispondente.

> $env:DEBUG = "express:*"; node index.js

L'esecuzione di questo comando sull'applicazione predefinita generata da [Programma di creazione express](/{{ page.lang }}/starter/generator.html) consentirà di stampare il seguente output:

$ DEBUG=express:* node ./bin/www
  express:router:route new / +0ms
  express:router:layer new / +1ms
  express:router:route get / +1ms
  express:router:layer new / +0ms
  express:router:route new / +1ms
  express:router:layer new / +0ms
  express:router:route get / +0ms
  express:router:layer new / +0ms
  express:application compile etag weak +1ms
  express:application compile query parser extended +0ms
  express:application compile trust proxy false +0ms
  express:application booting in development mode +1ms
  express:router use / query +0ms
  express:router:layer new / +0ms
  express:router use / expressInit +0ms
  express:router:layer new / +0ms
  express:router use / favicon +1ms
  express:router:layer new / +0ms
  express:router use / logger +0ms
  express:router:layer new / +0ms
  express:router use / jsonParser +0ms
  express:router:layer new / +1ms
  express:router use / urlencodedParser +0ms
  express:router:layer new / +0ms
  express:router use / cookieParser +0ms
  express:router:layer new / +0ms
  express:router use / stylus +90ms
  express:router:layer new / +0ms
  express:router use / serveStatic +0ms
  express:router:layer new / +0ms
  express:router use / router +0ms
  express:router:layer new / +1ms
  express:router use /users router +0ms
  express:router:layer new /users +0ms
  express:router use / <anonymous> +0ms
  express:router:layer new / +0ms
  express:router use / <anonymous> +0ms
  express:router:layer new / +0ms
  express:router use / <anonymous> +0ms
  express:router:layer new / +0ms

Quando successivamente viene effettuata una richiesta all'applicazione, verranno visualizzati i log specificati nel codice Express:

  express:router dispatching GET / +4h
  express:router query  : / +2ms
  express:router expressInit  : / +0ms
  express:router favicon  : / +0ms
  express:router logger  : / +1ms
  express:router jsonParser  : / +0ms
  express:router urlencodedParser  : / +1ms
  express:router cookieParser  : / +0ms
  express:router stylus  : / +0ms
  express:router serveStatic  : / +2ms
  express:router router  : / +2ms
  express:router dispatching GET / +1ms
  express:view lookup "index.pug" +338ms
  express:view stat "/projects/example/views/index.pug" +0ms
  express:view render "/projects/example/views/index.pug" +1ms

Per visualizzare i log solo dall'implementazione router impostare il valore DEBUG su express:router. In modo simile, per visualizzare i log solo dall'implementazione dell'applicazione impostare il valore DEBUG su express:application e così via.

Applicazioni generate da express

Un'applicazione generata dal comando express utilizza inoltre il modulo debug e il relativo spazio dei nomi di debug viene associato al nome dell'applicazione.

Ad esempio, se l'applicazione è stata generata con $ express sample-app, è possibile abilitare le istruzioni di debug con il seguente comando:

$ DEBUG=sample-app:* node ./bin/www

È possibile specificare più di uno spazio dei nomi di debug assegnando un elenco di nomi separati da virgola:

$ DEBUG=http,mail,express:* node index.js

Advanced options

When running through Node.js, you can set a few environment variables that will change the behavior of the debug logging:

Name Purpose
DEBUG Enables/disables specific debugging namespaces.
DEBUG_COLORS Whether or not to use colors in the debug output.
DEBUG_DEPTH Object inspection depth.
DEBUG_FD File descriptor to write debug output to.
DEBUG_SHOW_HIDDEN Shows hidden properties on inspected objects.

{% capture debug-text %}

The environment variables beginning with DEBUG_ end up being converted into an Options object that gets used with %o/%O formatters. See the Node.js documentation for util.inspect() for the complete list.

{% endcapture %}

{% include admonitions/note.html content=debug-text %}