Zipkin is a Distributed Tracing system developed by Twitter. The aim of this project is to allow Express Developers an easy way to mix in zipkin tracing to their apps.
Install via npm
npm install express-zipkin
var zipkin = require("express-zipkin");
// initialize zipkin when you start the server
zipkin.start({
scribeClientAddress: "localhost"
, scribeClientPort: 1463
, rpcName: "serverName"
, scribeStoreName: "zipkin"
, maxTraces: 50
, serverAddress: "server ip address"
, serverPort: 80
});
var zipkin = require("express-zipkin");
// initialize zipkin when you start the server
zipkin.start({
rpcName: "serverName"
, maxTraces: 50
, serverAddress: "server ip address"
, serverPort: 80
, withDebugTracer: true // set this for local testing to see trace information in the console
, localTesting: true // set this so local development doesn't need a scribe client
});
var zipkin = require("express-zipkin");
app.all("*", zipkin.trace);
var zipkin = require("express-zipkin");
function (request, response, next) {
var clientRequest = ...;
...;
clientRequest.headers = zipkin.toHeaders(request, clientRequest.headers);
};
var zipkin = require("express-zipkin");
function (request, response, next) {
var redisClient = ...;
zipkin.traceService(request, response, "redis", function(){ redisClient.get("myKey") }, next);
};