aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/resources
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2018-09-03 15:37:14 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2018-09-03 15:37:14 +0200
commitc487c51a54e67944c80cf2aecc63ac8158bf99a6 (patch)
treed88669c3445fcdee659b62b0a8352f5ad50c1e9a /kamon-core/src/main/resources
parentd30ff29cdb5f94be34163d851d71716a316bdf10 (diff)
downloadKamon-c487c51a54e67944c80cf2aecc63ac8158bf99a6.tar.gz
Kamon-c487c51a54e67944c80cf2aecc63ac8158bf99a6.tar.bz2
Kamon-c487c51a54e67944c80cf2aecc63ac8158bf99a6.zip
wip on the HttpServer instrumentation
Diffstat (limited to 'kamon-core/src/main/resources')
-rw-r--r--kamon-core/src/main/resources/reference.conf119
1 files changed, 70 insertions, 49 deletions
diff --git a/kamon-core/src/main/resources/reference.conf b/kamon-core/src/main/resources/reference.conf
index 279a00a9..8fb2abcc 100644
--- a/kamon-core/src/main/resources/reference.conf
+++ b/kamon-core/src/main/resources/reference.conf
@@ -183,12 +183,12 @@ kamon {
# Codecs to be used when propagating a Context through a HTTP Headers transport.
http-headers-keys {
- span = "kamon.trace.SpanCodec$B3"
+ //span = "kamon.trace.SpanCodec$B3"
}
# Codecs to be used when propagating a Context through a Binary transport.
binary-keys {
- span = "kamon.trace.SpanCodec$Colfer"
+ //span = "kamon.trace.SpanCodec$Colfer"
}
}
}
@@ -253,12 +253,29 @@ kamon {
http-server {
default {
+ #
+ # Configuration for HTTP context propagation
+ #
+ propagation {
+
+ # Enables or disables HTTP context propagation on this HTTP server instrumentation. Please note that if
+ # propagation is disabled then some distributed tracing features will not be work as expected (e.g. Spans can
+ # be created and reported but will not be linked across boundaries nor take trace identifiers from tags).
+ enabled = yes
+
+ # HTTP propagation channel to b used by this instrumentation. Take a look at the kamon.propagation.http.default
+ # configuration for more details on how to configure the detault HTTP context propagation.
+ channel = "default"
+ }
+
+
+ #
# Configuration for HTTP server metrics collection
#
metrics {
# Enables collection of HTTP server metrics
- enable = yes
+ enabled = yes
# Tags to include on the HTTP server metrics. The available options are:
# - method: HTTP method from the request.
@@ -270,13 +287,15 @@ kamon {
]
}
+
+ #
# Configuration for HTTP request tracing
#
tracing {
# Enables HTTP request tracing. When enabled the instrumentation will create Spans for incoming requests
# and finish them when the response is sent back to the clients.
- enable = yes
+ enabled = yes
# Select a context tag that provides a custom trace identifier. The custom trace identifier will be used
# only if all these conditions are met:
@@ -285,58 +304,60 @@ kamon {
# - the identifier is valued in accordance to the identity provider.
trace-id-tag = "none"
- # Metric tags to be automatically included in the HTTP server Spans. The available options are:
- # - method: HTTP method from the request.
- # - status-code: HTTP status code from the responses.
- # - peer: Name of the service issuing the HTTP call. Will use "unknown" if not present.
- metric-tags = [
- "method",
- "status-code",
- "peer"
- ]
- }
-
- # Configuration for HTTP context propagation
- #
- propagation {
+ # Enables collection of span metrics using the `span.processing-time` metric.
+ span-metrics = on
- # Enables or disables HTTP context propagation on this HTTP server instrumentation. Please note that if
- # propagation is disabled then some distributed tracing features will not be work as expected (e.g. Spans can
- # be created and reported but will not be linked across boundaries nor take trace identifiers from tags).
- enabled = yes
+ # Select which tags should be included as span and span metric tags. The possible options are:
+ # - span: the tag is added as a Span tag (i.e. using span.tag(...))
+ # - metric: the tag is added a a Span metric tag (i.e. using span.tagMetric(...))
+ # - off: the tag is not used.
+ #
+ tags {
- # HTTP propagation channel to b used by this instrumentation. Take a look at the kamon.propagation.http.default
- # configuration for more details on how to configure the detault HTTP context propagation.
- channel = "default"
- }
+ # Use the http.url tag.
+ url = span
+ # Use the http.method tag.
+ method = metric
- # Custom mappings between routes and operation names.
- #
- operations {
+ # Use the http.status_code tag.
+ status-code = metric
- # Operation name for Spans created on requests that could not be handled by any route in the current
- # application.
- unhanlded = "unhandled"
+ # Copy tags from the context into the Spans with the specified purpouse.
+ from-context {
- # Provides custom mappings from HTTP paths into operation names. Meant to be used in cases where the bytecode
- # instrumentation is not able to provide a sensible operation name that is free of high cardinality values.
- # For example, with the following configuration:
- # mappings {
- # "/organization/*/user/*/profile" = "/organization/:orgID/user/:userID/profile"
- # "/events/*/rsvps" = "EventRSVPs"
- # }
- #
- # Requests to "/organization/3651/user/39652/profile" and "/organization/22234/user/54543/profile" will have
- # the same operation name "/organization/:orgID/user/:userID/profile".
- #
- # Similarly, requests to "/events/aaa-bb-ccc/rsvps" and "/events/1234/rsvps" will have the same operation
- # name "EventRSVPs".
- #
- # The patterns are expressed as globs and the operation names are free form.
- #
- mappings {
+ # The peer tag identifiest the service that is calling the current service. It is added by default with
+ # the HttpClient instrumentation.
+ peer = metric
+ }
+ }
+ # Custom mappings between routes and operation names.
+ operations {
+
+ # Operation name for Spans created on requests that could not be handled by any route in the current
+ # application.
+ unhandled = "unhandled"
+
+ # Provides custom mappings from HTTP paths into operation names. Meant to be used in cases where the bytecode
+ # instrumentation is not able to provide a sensible operation name that is free of high cardinality values.
+ # For example, with the following configuration:
+ # mappings {
+ # "/organization/*/user/*/profile" = "/organization/:orgID/user/:userID/profile"
+ # "/events/*/rsvps" = "EventRSVPs"
+ # }
+ #
+ # Requests to "/organization/3651/user/39652/profile" and "/organization/22234/user/54543/profile" will have
+ # the same operation name "/organization/:orgID/user/:userID/profile".
+ #
+ # Similarly, requests to "/events/aaa-bb-ccc/rsvps" and "/events/1234/rsvps" will have the same operation
+ # name "EventRSVPs".
+ #
+ # The patterns are expressed as globs and the operation names are free form.
+ #
+ mappings {
+
+ }
}
}
}