For usage instructions, please see the examples in the
directory. There is a basic vanilly
example that shows how to use the tracer in the context of a single express
server and there is an advanced vanilla
example that shows how multiple services (express API and frontend) might
interact and share a tracing context.
injecting and ejecting
We currently only support HTTP Headers. If you need your own mechanism, feel
free to do a PR. Also we assume that you only inject the HTTP Headers once,
otherwise we will send multiple
ClientSend annotations for you.
Also you can only finish spans which were not extracted. If you like this behaviour to be different, please open an issue.
They are currently not supported, feel free to do a PR.
Follows From (zipkin)
FollowsFrom is not supported by openTracing, as far as I understand.
Additional options for starting a span
We need to know if this is a server or client to set the right annotations. Therefore we need the kind attribute to be set.
All examples need to run zipkin on
"localhost:9411". This is best achieved by
docker run -d -p 9411:9411 openzipkin/zipkin
To see how to use this library with only one service see
examples/vanillajs/basic. You can run the example with
npm run example:basic.
In order to see how different services may pick up spans and extend them, please
see the advanced example at
examples/vaniallajs/advanced. You can run the
npm run example:advanced.