Giter Site home page Giter Site logo

geronimo-opentracing's Introduction

Geronimo OpenTracing

Geronimo OpenTracing provides an OpenTracing implementation and a Microprofile OpenTracing implementation at once.

Note
sampling is not yet supported because it leads to push inconsistent spans to the backend, however you can always specialize (CDI) your FinishSpan observer to implement it if desired.

Configuration

Note
if you are using Microprofile Config it is used, otherwise it uses system properties.

Key

Description

Default

geronimo.opentracing.filter.active

Should OpenTracing be activated

true

geronimo.opentracing.filter.forcedTracing.urls

Urls for which the tracking should be activated automatically. The urls are actually the requets uri minus the context path.

-

geronimo.opentracing.filter.skippedTracing.urls

Urls for which the tracking should be skipped.

-

geronimo.opentracing.filter.skippedTracing.matcherType

Type of matcher for the url, default is prefix which means a startsWith is used on the url but you can also use regex which compiles the url as a Pattern

prefix

geronimo.opentracing.filter.forcedTracing.matcherType

Type of matcher for the url, default is prefix which means a startsWith is used on the url but you can also use regex which compiles the url as a Pattern

prefix

geronimo.opentracing.filter.forcedTracing.skipDefaultTags

Should HTTP_METHOD, HTTP_URL not be added to tags

false

geronimo.opentracing.server.filter.request.skip.<endpoint class>_<endpoint method>

Should server instrumentation be ignored

false

geronimo.opentracing.server.filter.request.skip

Should server instrumentation be ignored (if previous is not set)

false

geronimo.opentracing.server.filter.request.skipDefaultTags

Should HTTP_METHOD, HTTP_URL not be added to tags

false

geronimo.opentracing.server.filter.request.operationName.usePath

Should the operationName use the @Path annotations instead of class names.

false

geronimo.opentracing.client.filter.request.skip

Should client instrumentation be ignored

false

geronimo.opentracing.client.filter.request.skipDefaultTags

Should HTTP_METHOD, HTTP_URL not be added to tags

false

geronimo.opentracing.client.filter.request.skipPeerTags

Should PEER_HOSTNAME, PEER_PORT not be added to tags

false

geronimo.opentracing.propagation.headers.parentSpanId

Name of the header used to host the parent spanId value

X-B3-ParentSpanId

geronimo.opentracing.propagation.headers.spanId

Name of the header used to host the spanId value

X-B3-SpanId

geronimo.opentracing.propagation.headers.traceId

Name of the header used to host the traceId value

X-B3-TraceId

geronimo.opentracing.propagation.headers.baggagePrefix

Prefix of headers used to host the baggage values

baggage-

geronimo.opentracing.id.generator

counter (to generate longs), uuid (to generate random uuids) or hex (to use the hexa representation of the uuid generator). Specifies which kind of trace and span id are in use.

counter

geronimo.opentracing.id.generator.hex.prefix

For hex generator, a prefix to prepend to all ids.

-

geronimo.opentracing.span.converter.zipkin.active

Should spans converted to a zipkin representation. True until there is a standard opentracing format.

true

geronimo.opentracing.span.converter.zipkin.serviceName

The local serviceName.

hostname-jvmid

geronimo.opentracing.span.converter.zipkin.logger.active

Should a logger named org.apache.geronimo.opentracing.zipkin log each span as a Zipkin JSON. This allows to use a logger implementation to push the spans to any backend (like log4j2 kafka appender). It uses JUL as a facade.

true

geronimo.opentracing.span.converter.zipkin.logger.wrapAsList

Should zipkin JSON be logged wrapped in a list.

true

ExecutorServices

To monitor a CDI executor service, you can decorate it with @TracedExecutorService.

Extension module

geronimo-opentracing-extension provides a TracingProxyFactory module allowing to use java proxies (on interfaces) to add tracing to all methods of the decorated instance.

geronimo-opentracing's People

Contributors

fpapon avatar jeanouii avatar jgallimore avatar rmannibucau avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.