Name: js-handler/node_modules/restify/node_modules/bunyan/examples/server.js 
1:
// Example logging HTTP server request and response objects.
2:
 
3:
var http = require('http');
4:
var Logger = require('../lib/bunyan');
5:
 
6:
var log = new Logger({
7:
    name: 'myserver',
8:
    serializers: {
9:
        req: Logger.stdSerializers.req,
10:
        res: Logger.stdSerializers.res
11:
    }
12:
});
13:
 
14:
var server = http.createServer(function (req, res) {
15:
    log.info({req: req}, 'start request');  // <-- this is the guy we're testing
16:
    res.writeHead(200, {'Content-Type': 'text/plain'});
17:
    res.end('Hello World\n');
18:
    log.info({res: res}, 'done response');  // <-- this is the guy we're testing
19:
});
20:
server.listen(1337, '127.0.0.1', function () {
21:
    log.info('server listening');
22:
    var options = {
23:
        port: 1337,
24:
        hostname: '127.0.0.1',
25:
        path: '/path?q=1#anchor',
26:
        headers: {
27:
            'X-Hi': 'Mom'
28:
        }
29:
    };
30:
    var req = http.request(options);
31:
    req.on('response', function (res) {
32:
        res.on('end', function () {
33:
            process.exit();
34:
        })
35:
    });
36:
    req.write('hi from the client');
37:
    req.end();
38:
});
39:
 
40:
 
41:
/* BEGIN JSSTYLED */
42:
/**
43:
 *
44:
 * $ node server.js
45:
 * {"service":"myserver","hostname":"banana.local","level":3,"msg":"server listening","time":"2012-02-02T05:32:13.257Z","v":0}
46:
 * {"service":"myserver","hostname":"banana.local","req":{"method":"GET","url":"/path?q=1#anchor","headers":{"x-hi":"Mom","connection":"close"}},"level":3,"msg":"start request","time":"2012-02-02T05:32:13.260Z","v":0}
47:
 * {"service":"myserver","hostname":"banana.local","res":{"statusCode":200,"_hasBody":true,"_header":"HTTP/1.1 200 OK\r\nContent-Type: text/plain\r\nConnection: close\r\nTransfer-Encoding: chunked\r\n\r\n","_trailer":""},"level":3,"msg":"done response","time":"2012-02-02T05:32:13.261Z","v":0}
48:
 *
49:
 * $ node server.js | ../bin/bunyan
50:
 * [2012-02-02T05:32:16.006Z] INFO: myserver on banana.local: server listening
51:
 * [2012-02-02T05:32:16.010Z] INFO: myserver on banana.local: start request
52:
 *     GET /path?q=1#anchor
53:
 *     x-hi: Mom
54:
 *     connection: close
55:
 * [2012-02-02T05:32:16.011Z] INFO: myserver on banana.local: done response
56:
 *     HTTP/1.1 200 OK
57:
 *     Content-Type: text/plain
58:
 *     Connection: close
59:
 *     Transfer-Encoding: chunked
60:
 *     (body)
61:
 *
62:
 */
63:
/* END JSSTYLED */