Created Routing proxy with access logging (markdown)

brettcave 2012-06-29 05:52:30 -07:00
parent 0f9f672b9f
commit 9165d80955

@ -0,0 +1,21 @@
One of the useful methods of running http-proxy is as a routing proxy. The following configuration will configure http-proxy as a routing proxy with an access logger. In the example, http-proxy routes to 2 node applications, listening on port 3010 and 3020 respectively:
var httpProxy = require('http-proxy');
var options = { router: {
'/page1$' : localhost:3010,
'/page2$' : localhost:3020,
// default route
'.*' : localhost:3020
}}
var router = new httpProxy.RoutingProxy(options);
var proxy = httpProxy.createServer(function(req,res) {
console.log("request: " + req.path + "; method: " + req.method);
router.proxyRequest(req,res);
});
proxy.listen(3000, function() { console.log("Routing proxy listening on " + proxy.addresss().port); });
the above example uses console.log, but you could use any logging library, e.g. winston, to create access logs with info from req and res.