Skip to content

Add Zipkin tracing #179

@craigedmunds

Description

@craigedmunds

The Zipkin project http://zipkin.io/ is a server component that provides a distributed tracing capability, allowing transactions to be traced across service boundaries in a distributed system. The zipkin server can be run on docker using the docker-zipkin project https://github.com/openzipkin/docker-zipkin (given the multi-node setup, running this from the github repo and using "docker-compose up").

There's a node JS package available that handles wrapping express routes, other layers within the same service and external API / DB calls with Zipkin, so that they're timed and reported to the Zipkin server https://www.npmjs.com/package/express-zipkin

Similar to our New Relic implementation #163, we want to add optional Zipkin tracing to our stack, to log:

  • Fortune request start & end
  • Request parse start & end
  • Database call start & end
  • Connection open start & end
  • Response preparation parse start & end
  • Include resource processing start & end
  • hooks start & end totals
  • distinct hooks start & end (they run sequentially)

This would ideally be created as a dedicated fortune-zipkin repo, and npm package, and referenced from the fortune initialisation.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions