官术网_书友最值得收藏!

Debugging on the server

The same debugging package that is available on the client side is available on the server as well.

The debugging option can be turned on with a Node environmental variable.

Getting ready

To get started with debugging on the server side, you will need to have Node and Socket.IO installed and an existing app that uses Socket.IO. To test this out, you can easily use any of the apps we built in the previous recipes in this chapter.

How to do it…

To get server-side debugging turned on, follow these steps:

  1. To enable debugging at the time when you start your server, simply include the DEBUG environmental variable as the first argument when you start your Node server, as shown in the following code:
    DEBUG=* node server
  2. If you would like to persist the DEBUG environmental variable without the need to pass it every time you start your Node server, you can export it ahead of time using the following code:
    export  DEBUG=*
  3. Now, when you start your server, verbose logging will be used with the following code:
    node server
  4. You can always update the DEBUG variable or even remove it completely by setting it to null, which will suppress logging entirely, as shown in the following code:
    export DEBUG=null

How it works…

Node.js environmental variables are available in process.env in any running Node process. They are often used to set up server-specific configurations, such as database connections and third-party credentials.

The great thing about using environmental variables to define the logging verbosity is that most cloud-based hosting providers allow you to change environmental variables on the fly, so you can easily toggle logging on or off without having to redeploy your code.

There's more…

Similar to client-side logging, you can set the logging type to something other than the wildcard. This allows you to only get debugging messages on the topic you want to listen to.

For example, listening for XHR requests is as simple as passing it to the environmental variables when you start your Node server with the following code:

DEBUG=socket.io:server node server
主站蜘蛛池模板: 桐乡市| 繁峙县| 香河县| 延寿县| 铜陵市| 凤城市| 临夏市| 衡南县| 怀仁县| 司法| 宕昌县| 德安县| 大方县| 绥化市| 青田县| 沙田区| 湛江市| 神农架林区| 长春市| 远安县| 永丰县| 鄢陵县| 仁化县| 盐边县| 延川县| 萨迦县| 吴旗县| 耒阳市| 抚远县| 筠连县| 封开县| 宜章县| 海丰县| 九江市| 南通市| 海门市| 仪陇县| 瑞安市| 五峰| 霍邱县| 时尚|