Allow compiling on Erlang 23

`http_uri` module will be removed in Erlang 25. There is no obvious replacement
in `uri_string` so for now just ignore the deprecation warning.
2 files changed
tree: b47617bd261e6fc058a0c4394cbc604a46b29a8e
  1. doc/
  2. src/
  3. test/
  4. .gitignore
  5. .travis.yml
  8. rebar.config
  9. rebar.config.script
  10. rebar.lock

jaeger_passage version Build Status Code Coverage License: MIT

Jaeger client library for Erlang.

This is an extension library of passage.


A Running Example

Starts Jaeger in the background:

$ docker run -d -p6831:6831/udp -p6832:6832/udp -p16686:16686 jaegertracing/all-in-one:latest

Starts Erlang Shell:

$ rebar3 shell

% Starts `example_tracer`
> Sampler = passage_sampler_all:new().
> ok = jaeger_passage:start_tracer(example_tracer, Sampler).

% Starts a root span.
> RootSpan = passage:start_span(example_root, [{tracer, example_tracer}]).

% Starts a child span.
> ChildSpan = passage:start_span(example_child, [{child_of, RootSpan}]).

% Finishes the spans
> passage:finish_span(ChildSpan).
> passage:finish_span(RootSpan).

Browses the tracing result:

$ firefox http://localhost:16686/

Selecting reporter

By default ‘compact’ jaeger.thrift over UDP reporter is used. However it is possible to select different reporter. Bellow is a configuration matrics for available options:

protocolthrift_protocoljaeger portdescription
udpcompact6831accept jaeger.thrift over compact thrift protocol (default)
udpbinary6832accept jaeger.thrift over binary thrift protocol
httpN/A14268accept jaeger.thrift directly from clients

The HTTP version is beneficial if you don't have jaeger agents deployed or your spans are greater than max udp packet size (65Kb). Otherwise it is better to use default.