elli_otter

OpenTracing, via otter, middleware for Elli.

Install

{deps, [elli_otter]}.

Use the elli_middleware module as the callback with the elli_otter_middleware in the mods list, followed by other middlewares and your callback.

ElliOtterConfig = elli_otter:config(#{prefix => <<>>,
                                      traced_request_attributes => [path, method, headers],
                                      log_exceptions => true}),
Config = [{mods, [{elli_otter_middleware, ElliOtterConfig}, ...]}],
ElliOpts = [{callback, elli_middleware}, {callback_args, Config}, ...],

Configuration

See the otter documentation for how to configure filtering and sending to Zipkin or Jaeger.

elli_otter provides the function config to return the proper list used for configuration in the middleware. It takes a map with options: