Packages

package tracer

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. trait Http4sTracerDsl[F[_]] extends Http4sDsl[F] with TracerDsl
  2. class Tracer[F[_]] extends AnyRef
  3. trait TracerDsl extends AnyRef
  4. trait TracerLog[F[_]] extends AnyRef

Value Members

  1. object GenUUID
  2. object Http4sTracerDsl
  3. object Trace
  4. object TracedHttpRoute
  5. object Tracer extends StringSyntax

    org.http4s.server.HttpMiddleware that either tries to get a Trace-Id from the headers or otherwise creates one with a unique Time-based UUID value, adds it to the headers and logs the http request and http response with it.

    org.http4s.server.HttpMiddleware that either tries to get a Trace-Id from the headers or otherwise creates one with a unique Time-based UUID value, adds it to the headers and logs the http request and http response with it.

    Quite useful to trace the flow of each request. For example:

    [TraceId] - [72b079c8-fc92-4c4f-aa5a-c0cd91ea221c] - Request(method=GET, uri=/users, ...) [TraceId] - [72b079c8-fc92-4c4f-aa5a-c0cd91ea221c] - UserAlgebra requesting users [TraceId] - [72b079c8-fc92-4c4f-aa5a-c0cd91ea221c] - UserRepository fetching users from DB [TraceId] - [72b079c8-fc92-4c4f-aa5a-c0cd91ea221c] - MetricsService saving users metrics [TraceId] - [72b079c8-fc92-4c4f-aa5a-c0cd91ea221c] - Response(status=200, ...)

    In a normal application, you will have thousands of requests and tracing the call chain in a failure scenario will be invaluable.

Ungrouped