fix: Datadog case.
This commit is contained in:
parent
259c7adc81
commit
306e5081d9
22 changed files with 87 additions and 87 deletions
24
CHANGELOG.md
24
CHANGELOG.md
|
@ -217,7 +217,7 @@
|
||||||
- **[api,authentication]** Remove authentication hashes from API ([#4918](https://github.com/containous/traefik/pull/4918) by [ldez](https://github.com/ldez))
|
- **[api,authentication]** Remove authentication hashes from API ([#4918](https://github.com/containous/traefik/pull/4918) by [ldez](https://github.com/ldez))
|
||||||
- **[consul]** Enhance KV logs. ([#4877](https://github.com/containous/traefik/pull/4877) by [ldez](https://github.com/ldez))
|
- **[consul]** Enhance KV logs. ([#4877](https://github.com/containous/traefik/pull/4877) by [ldez](https://github.com/ldez))
|
||||||
- **[k8s]** Fix kubernetes template for backend responseforwarding flushinterval setting ([#4901](https://github.com/containous/traefik/pull/4901) by [ravilr](https://github.com/ravilr))
|
- **[k8s]** Fix kubernetes template for backend responseforwarding flushinterval setting ([#4901](https://github.com/containous/traefik/pull/4901) by [ravilr](https://github.com/ravilr))
|
||||||
- **[metrics]** Upgraded DataDog tracing library to 1.13.0 ([#4878](https://github.com/containous/traefik/pull/4878) by [aantono](https://github.com/aantono))
|
- **[metrics]** Upgraded Datadog tracing library to 1.13.0 ([#4878](https://github.com/containous/traefik/pull/4878) by [aantono](https://github.com/aantono))
|
||||||
- **[server]** Add missing callback on close of hijacked connections ([#4900](https://github.com/containous/traefik/pull/4900) by [ravilr](https://github.com/ravilr))
|
- **[server]** Add missing callback on close of hijacked connections ([#4900](https://github.com/containous/traefik/pull/4900) by [ravilr](https://github.com/ravilr))
|
||||||
|
|
||||||
**Documentation:**
|
**Documentation:**
|
||||||
|
@ -419,7 +419,7 @@
|
||||||
- **[k8s/ingress]** Loop through service ports for global backend ([#4486](https://github.com/containous/traefik/pull/4486) by [dtomcej](https://github.com/dtomcej))
|
- **[k8s/ingress]** Loop through service ports for global backend ([#4486](https://github.com/containous/traefik/pull/4486) by [dtomcej](https://github.com/dtomcej))
|
||||||
- **[k8s]** Add entrypoints prefix in kubernetes frontend/backend id ([#4679](https://github.com/containous/traefik/pull/4679) by [juliens](https://github.com/juliens))
|
- **[k8s]** Add entrypoints prefix in kubernetes frontend/backend id ([#4679](https://github.com/containous/traefik/pull/4679) by [juliens](https://github.com/juliens))
|
||||||
- **[websocket]** Exclude websocket connections from Average Response Time ([#4313](https://github.com/containous/traefik/pull/4313) by [siyu6974](https://github.com/siyu6974))
|
- **[websocket]** Exclude websocket connections from Average Response Time ([#4313](https://github.com/containous/traefik/pull/4313) by [siyu6974](https://github.com/siyu6974))
|
||||||
- **[middleware]** Added support for configuring trace headers for DataDog tracing ([#4516](https://github.com/containous/traefik/pull/4516) by [aantono](https://github.com/aantono))
|
- **[middleware]** Added support for configuring trace headers for Datadog tracing ([#4516](https://github.com/containous/traefik/pull/4516) by [aantono](https://github.com/aantono))
|
||||||
|
|
||||||
**Documentation:**
|
**Documentation:**
|
||||||
- **[acme]** Add _FILE Environment Variable Documentation ([#4643](https://github.com/containous/traefik/pull/4643) by [dargmuesli](https://github.com/dargmuesli))
|
- **[acme]** Add _FILE Environment Variable Documentation ([#4643](https://github.com/containous/traefik/pull/4643) by [dargmuesli](https://github.com/dargmuesli))
|
||||||
|
@ -670,7 +670,7 @@
|
||||||
- **[metrics]** Metrics: Add support for InfluxDB Database / RetentionPolicy and HTTP client ([#3391](https://github.com/containous/traefik/pull/3391) by [drewkerrigan](https://github.com/drewkerrigan))
|
- **[metrics]** Metrics: Add support for InfluxDB Database / RetentionPolicy and HTTP client ([#3391](https://github.com/containous/traefik/pull/3391) by [drewkerrigan](https://github.com/drewkerrigan))
|
||||||
- **[middleware,consulcatalog,docker,ecs,kv,marathon,mesos,rancher]** Pass the TLS Cert infos in headers ([#3826](https://github.com/containous/traefik/pull/3826) by [jbdoumenjou](https://github.com/jbdoumenjou))
|
- **[middleware,consulcatalog,docker,ecs,kv,marathon,mesos,rancher]** Pass the TLS Cert infos in headers ([#3826](https://github.com/containous/traefik/pull/3826) by [jbdoumenjou](https://github.com/jbdoumenjou))
|
||||||
- **[middleware,server]** Extreme Makeover: server refactoring ([#3461](https://github.com/containous/traefik/pull/3461) by [ldez](https://github.com/ldez))
|
- **[middleware,server]** Extreme Makeover: server refactoring ([#3461](https://github.com/containous/traefik/pull/3461) by [ldez](https://github.com/ldez))
|
||||||
- **[middleware,tracing]** Added integration support for DataDog APM Tracing ([#3517](https://github.com/containous/traefik/pull/3517) by [aantono](https://github.com/aantono))
|
- **[middleware,tracing]** Added integration support for Datadog APM Tracing ([#3517](https://github.com/containous/traefik/pull/3517) by [aantono](https://github.com/aantono))
|
||||||
- **[middleware,tracing]** Create a custom logger for jaeger ([#3541](https://github.com/containous/traefik/pull/3541) by [mmatur](https://github.com/mmatur))
|
- **[middleware,tracing]** Create a custom logger for jaeger ([#3541](https://github.com/containous/traefik/pull/3541) by [mmatur](https://github.com/mmatur))
|
||||||
- **[middleware]** Performance enhancements for the rules matchers. ([#3563](https://github.com/containous/traefik/pull/3563) by [ShaneSaww](https://github.com/ShaneSaww))
|
- **[middleware]** Performance enhancements for the rules matchers. ([#3563](https://github.com/containous/traefik/pull/3563) by [ShaneSaww](https://github.com/ShaneSaww))
|
||||||
- **[middleware]** Extract internal router creation from server ([#3204](https://github.com/containous/traefik/pull/3204) by [Juliens](https://github.com/Juliens))
|
- **[middleware]** Extract internal router creation from server ([#3204](https://github.com/containous/traefik/pull/3204) by [Juliens](https://github.com/Juliens))
|
||||||
|
@ -731,7 +731,7 @@
|
||||||
- **[oxy]** Handle Te header when http2 ([#3824](https://github.com/containous/traefik/pull/3824) by [Juliens](https://github.com/Juliens))
|
- **[oxy]** Handle Te header when http2 ([#3824](https://github.com/containous/traefik/pull/3824) by [Juliens](https://github.com/Juliens))
|
||||||
- **[server]** Avoid goroutine leak in server ([#3851](https://github.com/containous/traefik/pull/3851) by [nmengin](https://github.com/nmengin))
|
- **[server]** Avoid goroutine leak in server ([#3851](https://github.com/containous/traefik/pull/3851) by [nmengin](https://github.com/nmengin))
|
||||||
- **[server]** Avoid panic during stop ([#3898](https://github.com/containous/traefik/pull/3898) by [nmengin](https://github.com/nmengin))
|
- **[server]** Avoid panic during stop ([#3898](https://github.com/containous/traefik/pull/3898) by [nmengin](https://github.com/nmengin))
|
||||||
- **[tracing]** Added default configuration for DataDog APM Tracer ([#3655](https://github.com/containous/traefik/pull/3655) by [aantono](https://github.com/aantono))
|
- **[tracing]** Added default configuration for Datadog APM Tracer ([#3655](https://github.com/containous/traefik/pull/3655) by [aantono](https://github.com/aantono))
|
||||||
- **[tracing]** Added support for Trace name truncation for traces ([#3689](https://github.com/containous/traefik/pull/3689) by [aantono](https://github.com/aantono))
|
- **[tracing]** Added support for Trace name truncation for traces ([#3689](https://github.com/containous/traefik/pull/3689) by [aantono](https://github.com/aantono))
|
||||||
- **[websocket]** Handle shutdown of Hijacked connections ([#3636](https://github.com/containous/traefik/pull/3636) by [Juliens](https://github.com/Juliens))
|
- **[websocket]** Handle shutdown of Hijacked connections ([#3636](https://github.com/containous/traefik/pull/3636) by [Juliens](https://github.com/Juliens))
|
||||||
- **[webui]** Added Dashboard table item for Rate Limits ([#3893](https://github.com/containous/traefik/pull/3893) by [codecyclist](https://github.com/codecyclist))
|
- **[webui]** Added Dashboard table item for Rate Limits ([#3893](https://github.com/containous/traefik/pull/3893) by [codecyclist](https://github.com/codecyclist))
|
||||||
|
@ -868,7 +868,7 @@
|
||||||
- **[docker]** Uses both binded HostIP and HostPort when useBindPortIP=true ([#3638](https://github.com/containous/traefik/pull/3638) by [geraldcroes](https://github.com/geraldcroes))
|
- **[docker]** Uses both binded HostIP and HostPort when useBindPortIP=true ([#3638](https://github.com/containous/traefik/pull/3638) by [geraldcroes](https://github.com/geraldcroes))
|
||||||
- **[k8s]** Fix Rewrite-target regex ([#3699](https://github.com/containous/traefik/pull/3699) by [dtomcej](https://github.com/dtomcej))
|
- **[k8s]** Fix Rewrite-target regex ([#3699](https://github.com/containous/traefik/pull/3699) by [dtomcej](https://github.com/dtomcej))
|
||||||
- **[middleware]** Correct Entrypoint Redirect with Stripped or Added Path ([#3631](https://github.com/containous/traefik/pull/3631) by [dtomcej](https://github.com/dtomcej))
|
- **[middleware]** Correct Entrypoint Redirect with Stripped or Added Path ([#3631](https://github.com/containous/traefik/pull/3631) by [dtomcej](https://github.com/dtomcej))
|
||||||
- **[tracing]** Added default configuration for DataDog APM Tracer ([#3655](https://github.com/containous/traefik/pull/3655) by [aantono](https://github.com/aantono))
|
- **[tracing]** Added default configuration for Datadog APM Tracer ([#3655](https://github.com/containous/traefik/pull/3655) by [aantono](https://github.com/aantono))
|
||||||
- **[tracing]** Added support for Trace name truncation for traces ([#3689](https://github.com/containous/traefik/pull/3689) by [aantono](https://github.com/aantono))
|
- **[tracing]** Added support for Trace name truncation for traces ([#3689](https://github.com/containous/traefik/pull/3689) by [aantono](https://github.com/aantono))
|
||||||
- **[websocket]** Handle shutdown of Hijacked connections ([#3636](https://github.com/containous/traefik/pull/3636) by [Juliens](https://github.com/Juliens))
|
- **[websocket]** Handle shutdown of Hijacked connections ([#3636](https://github.com/containous/traefik/pull/3636) by [Juliens](https://github.com/Juliens))
|
||||||
- H2C: Remove buggy line in init to make verbose switch working ([#3701](https://github.com/containous/traefik/pull/3701) by [dduportal](https://github.com/dduportal))
|
- H2C: Remove buggy line in init to make verbose switch working ([#3701](https://github.com/containous/traefik/pull/3701) by [dduportal](https://github.com/dduportal))
|
||||||
|
@ -964,7 +964,7 @@
|
||||||
- **[mesos]** Segments Labels: Mesos ([#3383](https://github.com/containous/traefik/pull/3383) by [drewkerrigan](https://github.com/drewkerrigan))
|
- **[mesos]** Segments Labels: Mesos ([#3383](https://github.com/containous/traefik/pull/3383) by [drewkerrigan](https://github.com/drewkerrigan))
|
||||||
- **[metrics]** Metrics: Add support for InfluxDB Database / RetentionPolicy and HTTP client ([#3391](https://github.com/containous/traefik/pull/3391) by [drewkerrigan](https://github.com/drewkerrigan))
|
- **[metrics]** Metrics: Add support for InfluxDB Database / RetentionPolicy and HTTP client ([#3391](https://github.com/containous/traefik/pull/3391) by [drewkerrigan](https://github.com/drewkerrigan))
|
||||||
- **[middleware,server]** Extreme Makeover: server refactoring ([#3461](https://github.com/containous/traefik/pull/3461) by [ldez](https://github.com/ldez))
|
- **[middleware,server]** Extreme Makeover: server refactoring ([#3461](https://github.com/containous/traefik/pull/3461) by [ldez](https://github.com/ldez))
|
||||||
- **[middleware,tracing]** Added integration support for DataDog APM Tracing ([#3517](https://github.com/containous/traefik/pull/3517) by [aantono](https://github.com/aantono))
|
- **[middleware,tracing]** Added integration support for Datadog APM Tracing ([#3517](https://github.com/containous/traefik/pull/3517) by [aantono](https://github.com/aantono))
|
||||||
- **[middleware,tracing]** Create a custom logger for jaeger ([#3541](https://github.com/containous/traefik/pull/3541) by [mmatur](https://github.com/mmatur))
|
- **[middleware,tracing]** Create a custom logger for jaeger ([#3541](https://github.com/containous/traefik/pull/3541) by [mmatur](https://github.com/mmatur))
|
||||||
- **[middleware]** Performance enhancements for the rules matchers. ([#3563](https://github.com/containous/traefik/pull/3563) by [ShaneSaww](https://github.com/ShaneSaww))
|
- **[middleware]** Performance enhancements for the rules matchers. ([#3563](https://github.com/containous/traefik/pull/3563) by [ShaneSaww](https://github.com/ShaneSaww))
|
||||||
- **[middleware]** Extract internal router creation from server ([#3204](https://github.com/containous/traefik/pull/3204) by [Juliens](https://github.com/Juliens))
|
- **[middleware]** Extract internal router creation from server ([#3204](https://github.com/containous/traefik/pull/3204) by [Juliens](https://github.com/Juliens))
|
||||||
|
@ -1142,7 +1142,7 @@
|
||||||
- **[metrics]** Added entrypoint metrics to influxdb ([#2992](https://github.com/containous/traefik/pull/2992) by [adityacs](https://github.com/adityacs))
|
- **[metrics]** Added entrypoint metrics to influxdb ([#2992](https://github.com/containous/traefik/pull/2992) by [adityacs](https://github.com/adityacs))
|
||||||
- **[metrics]** Remove unnecessary conversion ([#2850](https://github.com/containous/traefik/pull/2850) by [ferhatelmas](https://github.com/ferhatelmas))
|
- **[metrics]** Remove unnecessary conversion ([#2850](https://github.com/containous/traefik/pull/2850) by [ferhatelmas](https://github.com/ferhatelmas))
|
||||||
- **[metrics]** Extend metrics and rebuild prometheus exporting logic ([#2567](https://github.com/containous/traefik/pull/2567) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Extend metrics and rebuild prometheus exporting logic ([#2567](https://github.com/containous/traefik/pull/2567) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Added missing metrics to registry for DataDog and StatsD ([#2890](https://github.com/containous/traefik/pull/2890) by [aantono](https://github.com/aantono))
|
- **[metrics]** Added missing metrics to registry for Datadog and StatsD ([#2890](https://github.com/containous/traefik/pull/2890) by [aantono](https://github.com/aantono))
|
||||||
- **[middleware,consul,consulcatalog,docker,ecs,k8s,marathon,mesos,rancher]** New option in secure middleware ([#2958](https://github.com/containous/traefik/pull/2958) by [mmatur](https://github.com/mmatur))
|
- **[middleware,consul,consulcatalog,docker,ecs,k8s,marathon,mesos,rancher]** New option in secure middleware ([#2958](https://github.com/containous/traefik/pull/2958) by [mmatur](https://github.com/mmatur))
|
||||||
- **[middleware,consulcatalog,docker,ecs,k8s,kv,marathon,mesos,rancher]** Ability to use "X-Forwarded-For" as a source of IP for white list. ([#3070](https://github.com/containous/traefik/pull/3070) by [ldez](https://github.com/ldez))
|
- **[middleware,consulcatalog,docker,ecs,k8s,kv,marathon,mesos,rancher]** Ability to use "X-Forwarded-For" as a source of IP for white list. ([#3070](https://github.com/containous/traefik/pull/3070) by [ldez](https://github.com/ldez))
|
||||||
- **[middleware,docker]** Use pointer of error pages ([#2607](https://github.com/containous/traefik/pull/2607) by [ldez](https://github.com/ldez))
|
- **[middleware,docker]** Use pointer of error pages ([#2607](https://github.com/containous/traefik/pull/2607) by [ldez](https://github.com/ldez))
|
||||||
|
@ -1394,7 +1394,7 @@
|
||||||
- **[mesos]** Add all available labels to Mesos Backend ([#2687](https://github.com/containous/traefik/pull/2687) by [ldez](https://github.com/ldez))
|
- **[mesos]** Add all available labels to Mesos Backend ([#2687](https://github.com/containous/traefik/pull/2687) by [ldez](https://github.com/ldez))
|
||||||
- **[metrics]** Added entrypoint metrics to influxdb ([#2992](https://github.com/containous/traefik/pull/2992) by [adityacs](https://github.com/adityacs))
|
- **[metrics]** Added entrypoint metrics to influxdb ([#2992](https://github.com/containous/traefik/pull/2992) by [adityacs](https://github.com/adityacs))
|
||||||
- **[metrics]** Extend metrics and rebuild prometheus exporting logic ([#2567](https://github.com/containous/traefik/pull/2567) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Extend metrics and rebuild prometheus exporting logic ([#2567](https://github.com/containous/traefik/pull/2567) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Added missing metrics to registry for DataDog and StatsD ([#2890](https://github.com/containous/traefik/pull/2890) by [aantono](https://github.com/aantono))
|
- **[metrics]** Added missing metrics to registry for Datadog and StatsD ([#2890](https://github.com/containous/traefik/pull/2890) by [aantono](https://github.com/aantono))
|
||||||
- **[metrics]** Remove unnecessary conversion ([#2850](https://github.com/containous/traefik/pull/2850) by [ferhatelmas](https://github.com/ferhatelmas))
|
- **[metrics]** Remove unnecessary conversion ([#2850](https://github.com/containous/traefik/pull/2850) by [ferhatelmas](https://github.com/ferhatelmas))
|
||||||
- **[middleware,consul,consulcatalog,docker,ecs,k8s,marathon,mesos,rancher]** New option in secure middleware ([#2958](https://github.com/containous/traefik/pull/2958) by [mmatur](https://github.com/mmatur))
|
- **[middleware,consul,consulcatalog,docker,ecs,k8s,marathon,mesos,rancher]** New option in secure middleware ([#2958](https://github.com/containous/traefik/pull/2958) by [mmatur](https://github.com/mmatur))
|
||||||
- **[middleware,consulcatalog,docker,ecs,k8s,kv,marathon,mesos,rancher]** Ability to use "X-Forwarded-For" as a source of IP for white list. ([#3070](https://github.com/containous/traefik/pull/3070) by [ldez](https://github.com/ldez))
|
- **[middleware,consulcatalog,docker,ecs,k8s,kv,marathon,mesos,rancher]** Ability to use "X-Forwarded-For" as a source of IP for white list. ([#3070](https://github.com/containous/traefik/pull/3070) by [ldez](https://github.com/ldez))
|
||||||
|
@ -2015,12 +2015,12 @@
|
||||||
- **[marathon]** Add support for readiness checks. ([#1883](https://github.com/containous/traefik/pull/1883) by [timoreimann](https://github.com/timoreimann))
|
- **[marathon]** Add support for readiness checks. ([#1883](https://github.com/containous/traefik/pull/1883) by [timoreimann](https://github.com/timoreimann))
|
||||||
- **[marathon]** Move marathon mock ([#1732](https://github.com/containous/traefik/pull/1732) by [ldez](https://github.com/ldez))
|
- **[marathon]** Move marathon mock ([#1732](https://github.com/containous/traefik/pull/1732) by [ldez](https://github.com/ldez))
|
||||||
- **[marathon]** Use single API call to fetch Marathon resources. ([#1815](https://github.com/containous/traefik/pull/1815) by [timoreimann](https://github.com/timoreimann))
|
- **[marathon]** Use single API call to fetch Marathon resources. ([#1815](https://github.com/containous/traefik/pull/1815) by [timoreimann](https://github.com/timoreimann))
|
||||||
- **[metrics]** Added RetryMetrics to DataDog and StatsD providers ([#1884](https://github.com/containous/traefik/pull/1884) by [aantono](https://github.com/aantono))
|
- **[metrics]** Added RetryMetrics to Datadog and StatsD providers ([#1884](https://github.com/containous/traefik/pull/1884) by [aantono](https://github.com/aantono))
|
||||||
- **[metrics]** Extract metrics to own package and refactor implementations ([#1968](https://github.com/containous/traefik/pull/1968) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Extract metrics to own package and refactor implementations ([#1968](https://github.com/containous/traefik/pull/1968) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Add metrics for backend_retries_total ([#1504](https://github.com/containous/traefik/pull/1504) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Add metrics for backend_retries_total ([#1504](https://github.com/containous/traefik/pull/1504) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Add status code to request duration metric ([#1755](https://github.com/containous/traefik/pull/1755) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Add status code to request duration metric ([#1755](https://github.com/containous/traefik/pull/1755) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[middleware]** Add trusted whitelist proxy protocol ([#2234](https://github.com/containous/traefik/pull/2234) by [emilevauge](https://github.com/emilevauge)))
|
- **[middleware]** Add trusted whitelist proxy protocol ([#2234](https://github.com/containous/traefik/pull/2234) by [emilevauge](https://github.com/emilevauge)))
|
||||||
- **[metrics]** DataDog and StatsD Metrics Support ([#1701](https://github.com/containous/traefik/pull/1701) by [aantono](https://github.com/aantono))
|
- **[metrics]** Datadog and StatsD Metrics Support ([#1701](https://github.com/containous/traefik/pull/1701) by [aantono](https://github.com/aantono))
|
||||||
- **[middleware]** Create Header Middleware ([#1236](https://github.com/containous/traefik/pull/1236) by [dtomcej](https://github.com/dtomcej))
|
- **[middleware]** Create Header Middleware ([#1236](https://github.com/containous/traefik/pull/1236) by [dtomcej](https://github.com/dtomcej))
|
||||||
- **[middleware]** Add configurable timeouts and curate default timeout settings ([#1873](https://github.com/containous/traefik/pull/1873) by [marco-jantke](https://github.com/marco-jantke))
|
- **[middleware]** Add configurable timeouts and curate default timeout settings ([#1873](https://github.com/containous/traefik/pull/1873) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[middleware]** Fix command bug content. ([#2002](https://github.com/containous/traefik/pull/2002) by [ldez](https://github.com/ldez))
|
- **[middleware]** Fix command bug content. ([#2002](https://github.com/containous/traefik/pull/2002) by [ldez](https://github.com/ldez))
|
||||||
|
@ -2326,11 +2326,11 @@
|
||||||
- **[marathon]** Move marathon mock ([#1732](https://github.com/containous/traefik/pull/1732) by [ldez](https://github.com/ldez))
|
- **[marathon]** Move marathon mock ([#1732](https://github.com/containous/traefik/pull/1732) by [ldez](https://github.com/ldez))
|
||||||
- **[marathon]** Support multi-port service routing for containers running on Marathon ([#1742](https://github.com/containous/traefik/pull/1742) by [aantono](https://github.com/aantono))
|
- **[marathon]** Support multi-port service routing for containers running on Marathon ([#1742](https://github.com/containous/traefik/pull/1742) by [aantono](https://github.com/aantono))
|
||||||
- **[marathon]** Use test builder. ([#1871](https://github.com/containous/traefik/pull/1871) by [timoreimann](https://github.com/timoreimann))
|
- **[marathon]** Use test builder. ([#1871](https://github.com/containous/traefik/pull/1871) by [timoreimann](https://github.com/timoreimann))
|
||||||
- **[metrics]** DataDog and StatsD Metrics Support ([#1701](https://github.com/containous/traefik/pull/1701) by [aantono](https://github.com/aantono))
|
- **[metrics]** Datadog and StatsD Metrics Support ([#1701](https://github.com/containous/traefik/pull/1701) by [aantono](https://github.com/aantono))
|
||||||
- **[metrics]** Add status code to request duration metric ([#1755](https://github.com/containous/traefik/pull/1755) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Add status code to request duration metric ([#1755](https://github.com/containous/traefik/pull/1755) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Add metrics for backend_retries_total ([#1504](https://github.com/containous/traefik/pull/1504) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Add metrics for backend_retries_total ([#1504](https://github.com/containous/traefik/pull/1504) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Extract metrics to own package and refactor implementations ([#1968](https://github.com/containous/traefik/pull/1968) by [marco-jantke](https://github.com/marco-jantke))
|
- **[metrics]** Extract metrics to own package and refactor implementations ([#1968](https://github.com/containous/traefik/pull/1968) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[metrics]** Added RetryMetrics to DataDog and StatsD providers ([#1884](https://github.com/containous/traefik/pull/1884) by [aantono](https://github.com/aantono))
|
- **[metrics]** Added RetryMetrics to Datadog and StatsD providers ([#1884](https://github.com/containous/traefik/pull/1884) by [aantono](https://github.com/aantono))
|
||||||
- **[middleware]** Return 503 on empty backend ([#1748](https://github.com/containous/traefik/pull/1748) by [marco-jantke](https://github.com/marco-jantke))
|
- **[middleware]** Return 503 on empty backend ([#1748](https://github.com/containous/traefik/pull/1748) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[middleware]** Add configurable timeouts and curate default timeout settings ([#1873](https://github.com/containous/traefik/pull/1873) by [marco-jantke](https://github.com/marco-jantke))
|
- **[middleware]** Add configurable timeouts and curate default timeout settings ([#1873](https://github.com/containous/traefik/pull/1873) by [marco-jantke](https://github.com/marco-jantke))
|
||||||
- **[middleware]** Custom Error Pages ([#1675](https://github.com/containous/traefik/pull/1675) by [bparli](https://github.com/bparli))
|
- **[middleware]** Custom Error Pages ([#1675](https://github.com/containous/traefik/pull/1675) by [bparli](https://github.com/bparli))
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
# DataDog
|
# Datadog
|
||||||
|
|
||||||
To enable the DataDog:
|
To enable the Datadog:
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[metrics]
|
[metrics]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
metrics:
|
metrics:
|
||||||
dataDog: {}
|
datadog: {}
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash tab="CLI"
|
```bash tab="CLI"
|
||||||
|
@ -24,13 +24,13 @@ Address instructs exporter to send metrics to datadog-agent at this address.
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[metrics]
|
[metrics]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
address = "127.0.0.1:8125"
|
address = "127.0.0.1:8125"
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
metrics:
|
metrics:
|
||||||
dataDog:
|
datadog:
|
||||||
address: 127.0.0.1:8125
|
address: 127.0.0.1:8125
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -46,13 +46,13 @@ Enable metrics on entry points.
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[metrics]
|
[metrics]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
addEntryPointsLabels = true
|
addEntryPointsLabels = true
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
metrics:
|
metrics:
|
||||||
dataDog:
|
datadog:
|
||||||
addEntryPointsLabels: true
|
addEntryPointsLabels: true
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -68,13 +68,13 @@ Enable metrics on services.
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[metrics]
|
[metrics]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
addServicesLabels = true
|
addServicesLabels = true
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
metrics:
|
metrics:
|
||||||
dataDog:
|
datadog:
|
||||||
addServicesLabels: true
|
addServicesLabels: true
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -90,13 +90,13 @@ The interval used by the exporter to push metrics to datadog-agent.
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[metrics]
|
[metrics]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
pushInterval = 10s
|
pushInterval = 10s
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
metrics:
|
metrics:
|
||||||
dataDog:
|
datadog:
|
||||||
pushInterval: 10s
|
pushInterval: 10s
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ Metrics system
|
||||||
|
|
||||||
Traefik supports 4 metrics backends:
|
Traefik supports 4 metrics backends:
|
||||||
|
|
||||||
- [DataDog](./datadog.md)
|
- [Datadog](./datadog.md)
|
||||||
- [InfluxDB](./influxdb.md)
|
- [InfluxDB](./influxdb.md)
|
||||||
- [Prometheus](./prometheus.md)
|
- [Prometheus](./prometheus.md)
|
||||||
- [StatsD](./statsd.md)
|
- [StatsD](./statsd.md)
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
# DataDog
|
# Datadog
|
||||||
|
|
||||||
To enable the DataDog:
|
To enable the Datadog:
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[tracing]
|
[tracing]
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
tracing:
|
tracing:
|
||||||
dataDog: {}
|
datadog: {}
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash tab="CLI"
|
```bash tab="CLI"
|
||||||
|
@ -24,13 +24,13 @@ Local Agent Host Port instructs reporter to send spans to datadog-tracing-agent
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[tracing]
|
[tracing]
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
localAgentHostPort = "127.0.0.1:8126"
|
localAgentHostPort = "127.0.0.1:8126"
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
tracing:
|
tracing:
|
||||||
dataDog:
|
datadog:
|
||||||
localAgentHostPort: 127.0.0.1:8126
|
localAgentHostPort: 127.0.0.1:8126
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -42,17 +42,17 @@ tracing:
|
||||||
|
|
||||||
_Optional, Default=false_
|
_Optional, Default=false_
|
||||||
|
|
||||||
Enable DataDog debug.
|
Enable Datadog debug.
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[tracing]
|
[tracing]
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
debug = true
|
debug = true
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
tracing:
|
tracing:
|
||||||
dataDog:
|
datadog:
|
||||||
debug: true
|
debug: true
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -68,13 +68,13 @@ Apply shared tag in a form of Key:Value to all the traces.
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[tracing]
|
[tracing]
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
globalTag = "sample"
|
globalTag = "sample"
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
tracing:
|
tracing:
|
||||||
dataDog:
|
datadog:
|
||||||
globalTag: sample
|
globalTag: sample
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -91,13 +91,13 @@ this option must be enabled in order to get all the parts of a distributed trace
|
||||||
|
|
||||||
```toml tab="File (TOML)"
|
```toml tab="File (TOML)"
|
||||||
[tracing]
|
[tracing]
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
prioritySampling = true
|
prioritySampling = true
|
||||||
```
|
```
|
||||||
|
|
||||||
```yaml tab="File (YAML)"
|
```yaml tab="File (YAML)"
|
||||||
tracing:
|
tracing:
|
||||||
dataDog:
|
datadog:
|
||||||
prioritySampling: true
|
prioritySampling: true
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ Traefik supports five tracing backends:
|
||||||
|
|
||||||
- [Jaeger](./jaeger.md)
|
- [Jaeger](./jaeger.md)
|
||||||
- [Zipkin](./zipkin.md)
|
- [Zipkin](./zipkin.md)
|
||||||
- [DataDog](./datadog.md)
|
- [Datadog](./datadog.md)
|
||||||
- [Instana](./instana.md)
|
- [Instana](./instana.md)
|
||||||
- [Haystack](./haystack.md)
|
- [Haystack](./haystack.md)
|
||||||
|
|
||||||
|
|
|
@ -151,19 +151,19 @@ Traefik log format: json | common (Default: ```common```)
|
||||||
Log level set to traefik logs. (Default: ```ERROR```)
|
Log level set to traefik logs. (Default: ```ERROR```)
|
||||||
|
|
||||||
`--metrics.datadog`:
|
`--metrics.datadog`:
|
||||||
DataDog metrics exporter type. (Default: ```false```)
|
Datadog metrics exporter type. (Default: ```false```)
|
||||||
|
|
||||||
`--metrics.datadog.addentrypointslabels`:
|
`--metrics.datadog.addentrypointslabels`:
|
||||||
Enable metrics on entry points. (Default: ```true```)
|
Enable metrics on entry points. (Default: ```true```)
|
||||||
|
|
||||||
`--metrics.datadog.address`:
|
`--metrics.datadog.address`:
|
||||||
DataDog's address. (Default: ```localhost:8125```)
|
Datadog's address. (Default: ```localhost:8125```)
|
||||||
|
|
||||||
`--metrics.datadog.addserviceslabels`:
|
`--metrics.datadog.addserviceslabels`:
|
||||||
Enable metrics on services. (Default: ```true```)
|
Enable metrics on services. (Default: ```true```)
|
||||||
|
|
||||||
`--metrics.datadog.pushinterval`:
|
`--metrics.datadog.pushinterval`:
|
||||||
DataDog push interval. (Default: ```10```)
|
Datadog push interval. (Default: ```10```)
|
||||||
|
|
||||||
`--metrics.influxdb`:
|
`--metrics.influxdb`:
|
||||||
InfluxDB metrics exporter type. (Default: ```false```)
|
InfluxDB metrics exporter type. (Default: ```false```)
|
||||||
|
@ -457,13 +457,13 @@ Add cert file for self-signed certificate.
|
||||||
OpenTracing configuration. (Default: ```false```)
|
OpenTracing configuration. (Default: ```false```)
|
||||||
|
|
||||||
`--tracing.datadog`:
|
`--tracing.datadog`:
|
||||||
Settings for DataDog. (Default: ```false```)
|
Settings for Datadog. (Default: ```false```)
|
||||||
|
|
||||||
`--tracing.datadog.bagageprefixheadername`:
|
`--tracing.datadog.bagageprefixheadername`:
|
||||||
Specifies the header name prefix that will be used to store baggage items in a map.
|
Specifies the header name prefix that will be used to store baggage items in a map.
|
||||||
|
|
||||||
`--tracing.datadog.debug`:
|
`--tracing.datadog.debug`:
|
||||||
Enable DataDog debug. (Default: ```false```)
|
Enable Datadog debug. (Default: ```false```)
|
||||||
|
|
||||||
`--tracing.datadog.globaltag`:
|
`--tracing.datadog.globaltag`:
|
||||||
Key:Value tag to be set on all the spans.
|
Key:Value tag to be set on all the spans.
|
||||||
|
|
|
@ -151,19 +151,19 @@ Traefik log format: json | common (Default: ```common```)
|
||||||
Log level set to traefik logs. (Default: ```ERROR```)
|
Log level set to traefik logs. (Default: ```ERROR```)
|
||||||
|
|
||||||
`TRAEFIK_METRICS_DATADOG`:
|
`TRAEFIK_METRICS_DATADOG`:
|
||||||
DataDog metrics exporter type. (Default: ```false```)
|
Datadog metrics exporter type. (Default: ```false```)
|
||||||
|
|
||||||
`TRAEFIK_METRICS_DATADOG_ADDENTRYPOINTSLABELS`:
|
`TRAEFIK_METRICS_DATADOG_ADDENTRYPOINTSLABELS`:
|
||||||
Enable metrics on entry points. (Default: ```true```)
|
Enable metrics on entry points. (Default: ```true```)
|
||||||
|
|
||||||
`TRAEFIK_METRICS_DATADOG_ADDRESS`:
|
`TRAEFIK_METRICS_DATADOG_ADDRESS`:
|
||||||
DataDog's address. (Default: ```localhost:8125```)
|
Datadog's address. (Default: ```localhost:8125```)
|
||||||
|
|
||||||
`TRAEFIK_METRICS_DATADOG_ADDSERVICESLABELS`:
|
`TRAEFIK_METRICS_DATADOG_ADDSERVICESLABELS`:
|
||||||
Enable metrics on services. (Default: ```true```)
|
Enable metrics on services. (Default: ```true```)
|
||||||
|
|
||||||
`TRAEFIK_METRICS_DATADOG_PUSHINTERVAL`:
|
`TRAEFIK_METRICS_DATADOG_PUSHINTERVAL`:
|
||||||
DataDog push interval. (Default: ```10```)
|
Datadog push interval. (Default: ```10```)
|
||||||
|
|
||||||
`TRAEFIK_METRICS_INFLUXDB`:
|
`TRAEFIK_METRICS_INFLUXDB`:
|
||||||
InfluxDB metrics exporter type. (Default: ```false```)
|
InfluxDB metrics exporter type. (Default: ```false```)
|
||||||
|
@ -457,13 +457,13 @@ Add cert file for self-signed certificate.
|
||||||
OpenTracing configuration. (Default: ```false```)
|
OpenTracing configuration. (Default: ```false```)
|
||||||
|
|
||||||
`TRAEFIK_TRACING_DATADOG`:
|
`TRAEFIK_TRACING_DATADOG`:
|
||||||
Settings for DataDog. (Default: ```false```)
|
Settings for Datadog. (Default: ```false```)
|
||||||
|
|
||||||
`TRAEFIK_TRACING_DATADOG_BAGAGEPREFIXHEADERNAME`:
|
`TRAEFIK_TRACING_DATADOG_BAGAGEPREFIXHEADERNAME`:
|
||||||
Specifies the header name prefix that will be used to store baggage items in a map.
|
Specifies the header name prefix that will be used to store baggage items in a map.
|
||||||
|
|
||||||
`TRAEFIK_TRACING_DATADOG_DEBUG`:
|
`TRAEFIK_TRACING_DATADOG_DEBUG`:
|
||||||
Enable DataDog debug. (Default: ```false```)
|
Enable Datadog debug. (Default: ```false```)
|
||||||
|
|
||||||
`TRAEFIK_TRACING_DATADOG_GLOBALTAG`:
|
`TRAEFIK_TRACING_DATADOG_GLOBALTAG`:
|
||||||
Key:Value tag to be set on all the spans.
|
Key:Value tag to be set on all the spans.
|
||||||
|
|
|
@ -115,7 +115,7 @@
|
||||||
buckets = [42.0, 42.0]
|
buckets = [42.0, 42.0]
|
||||||
addEntryPointsLabels = true
|
addEntryPointsLabels = true
|
||||||
addServicesLabels = true
|
addServicesLabels = true
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
address = "foobar"
|
address = "foobar"
|
||||||
pushInterval = "10s"
|
pushInterval = "10s"
|
||||||
addEntryPointsLabels = true
|
addEntryPointsLabels = true
|
||||||
|
@ -183,7 +183,7 @@
|
||||||
id128Bit = true
|
id128Bit = true
|
||||||
debug = true
|
debug = true
|
||||||
sampleRate = 42.0
|
sampleRate = 42.0
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
localAgentHostPort = "foobar"
|
localAgentHostPort = "foobar"
|
||||||
globalTag = "foobar"
|
globalTag = "foobar"
|
||||||
debug = true
|
debug = true
|
||||||
|
|
|
@ -122,7 +122,7 @@ metrics:
|
||||||
- 42
|
- 42
|
||||||
addEntryPointsLabels: true
|
addEntryPointsLabels: true
|
||||||
addServicesLabels: true
|
addServicesLabels: true
|
||||||
dataDog:
|
datadog:
|
||||||
address: foobar
|
address: foobar
|
||||||
pushInterval: 42
|
pushInterval: 42
|
||||||
addEntryPointsLabels: true
|
addEntryPointsLabels: true
|
||||||
|
@ -188,7 +188,7 @@ tracing:
|
||||||
id128Bit: true
|
id128Bit: true
|
||||||
debug: true
|
debug: true
|
||||||
sampleRate: 42
|
sampleRate: 42
|
||||||
dataDog:
|
datadog:
|
||||||
localAgentHostPort: foobar
|
localAgentHostPort: foobar
|
||||||
globalTag: foobar
|
globalTag: foobar
|
||||||
debug: true
|
debug: true
|
||||||
|
|
|
@ -122,7 +122,7 @@ nav:
|
||||||
- 'Access Logs': 'observability/access-logs.md'
|
- 'Access Logs': 'observability/access-logs.md'
|
||||||
- 'Metrics':
|
- 'Metrics':
|
||||||
- 'Overview': 'observability/metrics/overview.md'
|
- 'Overview': 'observability/metrics/overview.md'
|
||||||
- 'DataDog': 'observability/metrics/datadog.md'
|
- 'Datadog': 'observability/metrics/datadog.md'
|
||||||
- 'InfluxDB': 'observability/metrics/influxdb.md'
|
- 'InfluxDB': 'observability/metrics/influxdb.md'
|
||||||
- 'Prometheus': 'observability/metrics/prometheus.md'
|
- 'Prometheus': 'observability/metrics/prometheus.md'
|
||||||
- 'StatsD': 'observability/metrics/statsd.md'
|
- 'StatsD': 'observability/metrics/statsd.md'
|
||||||
|
@ -130,7 +130,7 @@ nav:
|
||||||
- 'Overview': 'observability/tracing/overview.md'
|
- 'Overview': 'observability/tracing/overview.md'
|
||||||
- 'Jaeger': 'observability/tracing/jaeger.md'
|
- 'Jaeger': 'observability/tracing/jaeger.md'
|
||||||
- 'Zipkin': 'observability/tracing/zipkin.md'
|
- 'Zipkin': 'observability/tracing/zipkin.md'
|
||||||
- 'DataDog': 'observability/tracing/datadog.md'
|
- 'Datadog': 'observability/tracing/datadog.md'
|
||||||
- 'Instana': 'observability/tracing/instana.md'
|
- 'Instana': 'observability/tracing/instana.md'
|
||||||
- 'Haystack': 'observability/tracing/haystack.md'
|
- 'Haystack': 'observability/tracing/haystack.md'
|
||||||
- 'User Guides':
|
- 'User Guides':
|
||||||
|
|
|
@ -186,7 +186,7 @@ func TestDo_globalConfiguration(t *testing.T) {
|
||||||
Prometheus: &types.Prometheus{
|
Prometheus: &types.Prometheus{
|
||||||
Buckets: []float64{0.1, 0.3, 1.2, 5},
|
Buckets: []float64{0.1, 0.3, 1.2, 5},
|
||||||
},
|
},
|
||||||
DataDog: &types.DataDog{
|
Datadog: &types.Datadog{
|
||||||
Address: "localhost:8181",
|
Address: "localhost:8181",
|
||||||
PushInterval: 12,
|
PushInterval: 12,
|
||||||
},
|
},
|
||||||
|
@ -226,7 +226,7 @@ func TestDo_globalConfiguration(t *testing.T) {
|
||||||
Debug: true,
|
Debug: true,
|
||||||
SampleRate: 53,
|
SampleRate: 53,
|
||||||
},
|
},
|
||||||
DataDog: &datadog.Config{
|
Datadog: &datadog.Config{
|
||||||
LocalAgentHostPort: "ggg",
|
LocalAgentHostPort: "ggg",
|
||||||
GlobalTag: "eee",
|
GlobalTag: "eee",
|
||||||
Debug: true,
|
Debug: true,
|
||||||
|
|
|
@ -119,7 +119,7 @@
|
||||||
buckets = [42.0, 42.0]
|
buckets = [42.0, 42.0]
|
||||||
entryPoint = "foobar"
|
entryPoint = "foobar"
|
||||||
middlewares = ["foobar", "foobar"]
|
middlewares = ["foobar", "foobar"]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
address = "foobar"
|
address = "foobar"
|
||||||
pushInterval = "10s"
|
pushInterval = "10s"
|
||||||
[metrics.statsD]
|
[metrics.statsD]
|
||||||
|
@ -179,7 +179,7 @@
|
||||||
id128Bit = true
|
id128Bit = true
|
||||||
debug = true
|
debug = true
|
||||||
sampleRate = 42.0
|
sampleRate = 42.0
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
localAgentHostPort = "foobar"
|
localAgentHostPort = "foobar"
|
||||||
globalTag = "foobar"
|
globalTag = "foobar"
|
||||||
debug = true
|
debug = true
|
||||||
|
|
|
@ -143,7 +143,7 @@ func Test_decodeFileToNode_Toml(t *testing.T) {
|
||||||
{Name: "format", Value: "foobar"},
|
{Name: "format", Value: "foobar"},
|
||||||
{Name: "level", Value: "foobar"}}},
|
{Name: "level", Value: "foobar"}}},
|
||||||
{Name: "metrics", Children: []*parser.Node{
|
{Name: "metrics", Children: []*parser.Node{
|
||||||
{Name: "dataDog", Children: []*parser.Node{
|
{Name: "datadog", Children: []*parser.Node{
|
||||||
{Name: "address", Value: "foobar"},
|
{Name: "address", Value: "foobar"},
|
||||||
{Name: "pushInterval", Value: "10s"}}},
|
{Name: "pushInterval", Value: "10s"}}},
|
||||||
{Name: "influxDB", Children: []*parser.Node{
|
{Name: "influxDB", Children: []*parser.Node{
|
||||||
|
@ -251,7 +251,7 @@ func Test_decodeFileToNode_Toml(t *testing.T) {
|
||||||
{Name: "maxIdleConnsPerHost", Value: "42"},
|
{Name: "maxIdleConnsPerHost", Value: "42"},
|
||||||
{Name: "rootCAs", Value: "foobar,foobar"}}},
|
{Name: "rootCAs", Value: "foobar,foobar"}}},
|
||||||
{Name: "tracing", Children: []*parser.Node{
|
{Name: "tracing", Children: []*parser.Node{
|
||||||
{Name: "dataDog", Children: []*parser.Node{
|
{Name: "datadog", Children: []*parser.Node{
|
||||||
{Name: "bagagePrefixHeaderName", Value: "foobar"},
|
{Name: "bagagePrefixHeaderName", Value: "foobar"},
|
||||||
{Name: "debug", Value: "true"},
|
{Name: "debug", Value: "true"},
|
||||||
{Name: "globalTag", Value: "foobar"},
|
{Name: "globalTag", Value: "foobar"},
|
||||||
|
@ -378,7 +378,7 @@ func Test_decodeFileToNode_Yaml(t *testing.T) {
|
||||||
{Name: "format", Value: "foobar"},
|
{Name: "format", Value: "foobar"},
|
||||||
{Name: "level", Value: "foobar"}}},
|
{Name: "level", Value: "foobar"}}},
|
||||||
{Name: "metrics", Children: []*parser.Node{
|
{Name: "metrics", Children: []*parser.Node{
|
||||||
{Name: "dataDog", Children: []*parser.Node{
|
{Name: "datadog", Children: []*parser.Node{
|
||||||
{Name: "address", Value: "foobar"},
|
{Name: "address", Value: "foobar"},
|
||||||
{Name: "pushInterval", Value: "10s"}}},
|
{Name: "pushInterval", Value: "10s"}}},
|
||||||
{Name: "influxDB", Children: []*parser.Node{
|
{Name: "influxDB", Children: []*parser.Node{
|
||||||
|
@ -486,7 +486,7 @@ func Test_decodeFileToNode_Yaml(t *testing.T) {
|
||||||
{Name: "maxIdleConnsPerHost", Value: "42"},
|
{Name: "maxIdleConnsPerHost", Value: "42"},
|
||||||
{Name: "rootCAs", Value: "foobar,foobar"}}},
|
{Name: "rootCAs", Value: "foobar,foobar"}}},
|
||||||
{Name: "tracing", Children: []*parser.Node{
|
{Name: "tracing", Children: []*parser.Node{
|
||||||
{Name: "dataDog", Children: []*parser.Node{
|
{Name: "datadog", Children: []*parser.Node{
|
||||||
{Name: "bagagePrefixHeaderName", Value: "foobar"},
|
{Name: "bagagePrefixHeaderName", Value: "foobar"},
|
||||||
{Name: "debug", Value: "true"},
|
{Name: "debug", Value: "true"},
|
||||||
{Name: "globalTag", Value: "foobar"},
|
{Name: "globalTag", Value: "foobar"},
|
||||||
|
|
|
@ -119,7 +119,7 @@
|
||||||
buckets = [42.0, 42.0]
|
buckets = [42.0, 42.0]
|
||||||
entryPoint = "foobar"
|
entryPoint = "foobar"
|
||||||
middlewares = ["foobar", "foobar"]
|
middlewares = ["foobar", "foobar"]
|
||||||
[metrics.dataDog]
|
[metrics.datadog]
|
||||||
address = "foobar"
|
address = "foobar"
|
||||||
pushInterval = "10s"
|
pushInterval = "10s"
|
||||||
[metrics.statsD]
|
[metrics.statsD]
|
||||||
|
@ -179,7 +179,7 @@
|
||||||
id128Bit = true
|
id128Bit = true
|
||||||
debug = true
|
debug = true
|
||||||
sampleRate = 42.0
|
sampleRate = 42.0
|
||||||
[tracing.dataDog]
|
[tracing.datadog]
|
||||||
localAgentHostPort = "foobar"
|
localAgentHostPort = "foobar"
|
||||||
globalTag = "foobar"
|
globalTag = "foobar"
|
||||||
debug = true
|
debug = true
|
||||||
|
|
|
@ -130,7 +130,7 @@ metrics:
|
||||||
middlewares:
|
middlewares:
|
||||||
- foobar
|
- foobar
|
||||||
- foobar
|
- foobar
|
||||||
dataDog:
|
datadog:
|
||||||
address: foobar
|
address: foobar
|
||||||
pushInterval: 10s
|
pushInterval: 10s
|
||||||
statsD:
|
statsD:
|
||||||
|
@ -190,7 +190,7 @@ tracing:
|
||||||
id128Bit: true
|
id128Bit: true
|
||||||
debug: true
|
debug: true
|
||||||
sampleRate: 42
|
sampleRate: 42
|
||||||
dataDog:
|
datadog:
|
||||||
localAgentHostPort: foobar
|
localAgentHostPort: foobar
|
||||||
globalTag: foobar
|
globalTag: foobar
|
||||||
debug: true
|
debug: true
|
||||||
|
|
|
@ -139,7 +139,7 @@ type Tracing struct {
|
||||||
SpanNameLimit int `description:"Set the maximum character limit for Span names (default 0 = no limit)." json:"spanNameLimit,omitempty" toml:"spanNameLimit,omitempty" yaml:"spanNameLimit,omitempty" export:"true"`
|
SpanNameLimit int `description:"Set the maximum character limit for Span names (default 0 = no limit)." json:"spanNameLimit,omitempty" toml:"spanNameLimit,omitempty" yaml:"spanNameLimit,omitempty" export:"true"`
|
||||||
Jaeger *jaeger.Config `description:"Settings for Jaeger." json:"jaeger,omitempty" toml:"jaeger,omitempty" yaml:"jaeger,omitempty" export:"true" label:"allowEmpty"`
|
Jaeger *jaeger.Config `description:"Settings for Jaeger." json:"jaeger,omitempty" toml:"jaeger,omitempty" yaml:"jaeger,omitempty" export:"true" label:"allowEmpty"`
|
||||||
Zipkin *zipkin.Config `description:"Settings for Zipkin." json:"zipkin,omitempty" toml:"zipkin,omitempty" yaml:"zipkin,omitempty" export:"true" label:"allowEmpty"`
|
Zipkin *zipkin.Config `description:"Settings for Zipkin." json:"zipkin,omitempty" toml:"zipkin,omitempty" yaml:"zipkin,omitempty" export:"true" label:"allowEmpty"`
|
||||||
DataDog *datadog.Config `description:"Settings for DataDog." json:"dataDog,omitempty" toml:"dataDog,omitempty" yaml:"dataDog,omitempty" export:"true" label:"allowEmpty"`
|
Datadog *datadog.Config `description:"Settings for Datadog." json:"datadog,omitempty" toml:"datadog,omitempty" yaml:"datadog,omitempty" export:"true" label:"allowEmpty"`
|
||||||
Instana *instana.Config `description:"Settings for Instana." json:"instana,omitempty" toml:"instana,omitempty" yaml:"instana,omitempty" export:"true" label:"allowEmpty"`
|
Instana *instana.Config `description:"Settings for Instana." json:"instana,omitempty" toml:"instana,omitempty" yaml:"instana,omitempty" export:"true" label:"allowEmpty"`
|
||||||
Haystack *haystack.Config `description:"Settings for Haystack." json:"haystack,omitempty" toml:"haystack,omitempty" yaml:"haystack,omitempty" export:"true" label:"allowEmpty"`
|
Haystack *haystack.Config `description:"Settings for Haystack." json:"haystack,omitempty" toml:"haystack,omitempty" yaml:"haystack,omitempty" export:"true" label:"allowEmpty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ const (
|
||||||
)
|
)
|
||||||
|
|
||||||
// RegisterDatadog registers the metrics pusher if this didn't happen yet and creates a datadog Registry instance.
|
// RegisterDatadog registers the metrics pusher if this didn't happen yet and creates a datadog Registry instance.
|
||||||
func RegisterDatadog(ctx context.Context, config *types.DataDog) Registry {
|
func RegisterDatadog(ctx context.Context, config *types.Datadog) Registry {
|
||||||
if datadogTicker == nil {
|
if datadogTicker == nil {
|
||||||
datadogTicker = initDatadogClient(ctx, config)
|
datadogTicker = initDatadogClient(ctx, config)
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,7 @@ func RegisterDatadog(ctx context.Context, config *types.DataDog) Registry {
|
||||||
return registry
|
return registry
|
||||||
}
|
}
|
||||||
|
|
||||||
func initDatadogClient(ctx context.Context, config *types.DataDog) *time.Ticker {
|
func initDatadogClient(ctx context.Context, config *types.Datadog) *time.Ticker {
|
||||||
address := config.Address
|
address := config.Address
|
||||||
if len(address) == 0 {
|
if len(address) == 0 {
|
||||||
address = "localhost:8125"
|
address = "localhost:8125"
|
||||||
|
|
|
@ -16,7 +16,7 @@ func TestDatadog(t *testing.T) {
|
||||||
// This is needed to make sure that UDP Listener listens for data a bit longer, otherwise it will quit after a millisecond
|
// This is needed to make sure that UDP Listener listens for data a bit longer, otherwise it will quit after a millisecond
|
||||||
udp.Timeout = 5 * time.Second
|
udp.Timeout = 5 * time.Second
|
||||||
|
|
||||||
datadogRegistry := RegisterDatadog(context.Background(), &types.DataDog{Address: ":18125", PushInterval: types.Duration(time.Second), AddEntryPointsLabels: true, AddServicesLabels: true})
|
datadogRegistry := RegisterDatadog(context.Background(), &types.Datadog{Address: ":18125", PushInterval: types.Duration(time.Second), AddEntryPointsLabels: true, AddServicesLabels: true})
|
||||||
defer StopDatadog()
|
defer StopDatadog()
|
||||||
|
|
||||||
if !datadogRegistry.IsEpEnabled() || !datadogRegistry.IsSvcEnabled() {
|
if !datadogRegistry.IsEpEnabled() || !datadogRegistry.IsSvcEnabled() {
|
||||||
|
|
|
@ -66,11 +66,11 @@ func setupTracing(conf *static.Tracing) tracing.Backend {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if conf.DataDog != nil {
|
if conf.Datadog != nil {
|
||||||
if backend != nil {
|
if backend != nil {
|
||||||
log.WithoutContext().Error("Multiple tracing backend are not supported: cannot create DataDog backend.")
|
log.WithoutContext().Error("Multiple tracing backend are not supported: cannot create Datadog backend.")
|
||||||
} else {
|
} else {
|
||||||
backend = conf.DataDog
|
backend = conf.Datadog
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -307,11 +307,11 @@ func registerMetricClients(metricsConfig *types.Metrics) metrics.Registry {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if metricsConfig.DataDog != nil {
|
if metricsConfig.Datadog != nil {
|
||||||
ctx := log.With(context.Background(), log.Str(log.MetricsProviderName, "datadog"))
|
ctx := log.With(context.Background(), log.Str(log.MetricsProviderName, "datadog"))
|
||||||
registries = append(registries, metrics.RegisterDatadog(ctx, metricsConfig.DataDog))
|
registries = append(registries, metrics.RegisterDatadog(ctx, metricsConfig.Datadog))
|
||||||
log.FromContext(ctx).Debugf("Configured DataDog metrics: pushing to %s once every %s",
|
log.FromContext(ctx).Debugf("Configured Datadog metrics: pushing to %s once every %s",
|
||||||
metricsConfig.DataDog.Address, metricsConfig.DataDog.PushInterval)
|
metricsConfig.Datadog.Address, metricsConfig.Datadog.PushInterval)
|
||||||
}
|
}
|
||||||
|
|
||||||
if metricsConfig.StatsD != nil {
|
if metricsConfig.StatsD != nil {
|
||||||
|
|
|
@ -17,7 +17,7 @@ const Name = "datadog"
|
||||||
type Config struct {
|
type Config struct {
|
||||||
LocalAgentHostPort string `description:"Set datadog-agent's host:port that the reporter will used." json:"localAgentHostPort,omitempty" toml:"localAgentHostPort,omitempty" yaml:"localAgentHostPort,omitempty"`
|
LocalAgentHostPort string `description:"Set datadog-agent's host:port that the reporter will used." json:"localAgentHostPort,omitempty" toml:"localAgentHostPort,omitempty" yaml:"localAgentHostPort,omitempty"`
|
||||||
GlobalTag string `description:"Key:Value tag to be set on all the spans." json:"globalTag,omitempty" toml:"globalTag,omitempty" yaml:"globalTag,omitempty" export:"true"`
|
GlobalTag string `description:"Key:Value tag to be set on all the spans." json:"globalTag,omitempty" toml:"globalTag,omitempty" yaml:"globalTag,omitempty" export:"true"`
|
||||||
Debug bool `description:"Enable DataDog debug." json:"debug,omitempty" toml:"debug,omitempty" yaml:"debug,omitempty" export:"true"`
|
Debug bool `description:"Enable Datadog debug." json:"debug,omitempty" toml:"debug,omitempty" yaml:"debug,omitempty" export:"true"`
|
||||||
PrioritySampling bool `description:"Enable priority sampling. When using distributed tracing, this option must be enabled in order to get all the parts of a distributed trace sampled." json:"prioritySampling,omitempty" toml:"prioritySampling,omitempty" yaml:"prioritySampling,omitempty"`
|
PrioritySampling bool `description:"Enable priority sampling. When using distributed tracing, this option must be enabled in order to get all the parts of a distributed trace sampled." json:"prioritySampling,omitempty" toml:"prioritySampling,omitempty" yaml:"prioritySampling,omitempty"`
|
||||||
TraceIDHeaderName string `description:"Specifies the header name that will be used to store the trace ID." json:"traceIDHeaderName,omitempty" toml:"traceIDHeaderName,omitempty" yaml:"traceIDHeaderName,omitempty" export:"true"`
|
TraceIDHeaderName string `description:"Specifies the header name that will be used to store the trace ID." json:"traceIDHeaderName,omitempty" toml:"traceIDHeaderName,omitempty" yaml:"traceIDHeaderName,omitempty" export:"true"`
|
||||||
ParentIDHeaderName string `description:"Specifies the header name that will be used to store the parent ID." json:"parentIDHeaderName,omitempty" toml:"parentIDHeaderName,omitempty" yaml:"parentIDHeaderName,omitempty" export:"true"`
|
ParentIDHeaderName string `description:"Specifies the header name that will be used to store the parent ID." json:"parentIDHeaderName,omitempty" toml:"parentIDHeaderName,omitempty" yaml:"parentIDHeaderName,omitempty" export:"true"`
|
||||||
|
@ -62,7 +62,7 @@ func (c *Config) Setup(serviceName string) (opentracing.Tracer, io.Closer, error
|
||||||
// Without this, child spans are getting the NOOP tracer
|
// Without this, child spans are getting the NOOP tracer
|
||||||
opentracing.SetGlobalTracer(tracer)
|
opentracing.SetGlobalTracer(tracer)
|
||||||
|
|
||||||
log.WithoutContext().Debug("DataDog tracer configured")
|
log.WithoutContext().Debug("Datadog tracer configured")
|
||||||
|
|
||||||
return tracer, nil, nil
|
return tracer, nil, nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,7 +63,7 @@ func (c *Config) Setup(serviceName string) (opentracing.Tracer, io.Closer, error
|
||||||
// Without this, child spans are getting the NOOP tracer
|
// Without this, child spans are getting the NOOP tracer
|
||||||
opentracing.SetGlobalTracer(tracer)
|
opentracing.SetGlobalTracer(tracer)
|
||||||
|
|
||||||
log.WithoutContext().Debug("DataDog tracer configured")
|
log.WithoutContext().Debug("haystack tracer configured")
|
||||||
|
|
||||||
return tracer, closer, nil
|
return tracer, closer, nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ import (
|
||||||
// Metrics provides options to expose and send Traefik metrics to different third party monitoring systems.
|
// Metrics provides options to expose and send Traefik metrics to different third party monitoring systems.
|
||||||
type Metrics struct {
|
type Metrics struct {
|
||||||
Prometheus *Prometheus `description:"Prometheus metrics exporter type." json:"prometheus,omitempty" toml:"prometheus,omitempty" yaml:"prometheus,omitempty" export:"true" label:"allowEmpty"`
|
Prometheus *Prometheus `description:"Prometheus metrics exporter type." json:"prometheus,omitempty" toml:"prometheus,omitempty" yaml:"prometheus,omitempty" export:"true" label:"allowEmpty"`
|
||||||
DataDog *DataDog `description:"DataDog metrics exporter type." json:"dataDog,omitempty" toml:"dataDog,omitempty" yaml:"dataDog,omitempty" export:"true" label:"allowEmpty"`
|
Datadog *Datadog `description:"Datadog metrics exporter type." json:"datadog,omitempty" toml:"datadog,omitempty" yaml:"datadog,omitempty" export:"true" label:"allowEmpty"`
|
||||||
StatsD *Statsd `description:"StatsD metrics exporter type." json:"statsD,omitempty" toml:"statsD,omitempty" yaml:"statsD,omitempty" export:"true" label:"allowEmpty"`
|
StatsD *Statsd `description:"StatsD metrics exporter type." json:"statsD,omitempty" toml:"statsD,omitempty" yaml:"statsD,omitempty" export:"true" label:"allowEmpty"`
|
||||||
InfluxDB *InfluxDB `description:"InfluxDB metrics exporter type." json:"influxDB,omitempty" toml:"influxDB,omitempty" yaml:"influxDB,omitempty" label:"allowEmpty"`
|
InfluxDB *InfluxDB `description:"InfluxDB metrics exporter type." json:"influxDB,omitempty" toml:"influxDB,omitempty" yaml:"influxDB,omitempty" label:"allowEmpty"`
|
||||||
}
|
}
|
||||||
|
@ -26,16 +26,16 @@ func (p *Prometheus) SetDefaults() {
|
||||||
p.AddServicesLabels = true
|
p.AddServicesLabels = true
|
||||||
}
|
}
|
||||||
|
|
||||||
// DataDog contains address and metrics pushing interval configuration.
|
// Datadog contains address and metrics pushing interval configuration.
|
||||||
type DataDog struct {
|
type Datadog struct {
|
||||||
Address string `description:"DataDog's address." json:"address,omitempty" toml:"address,omitempty" yaml:"address,omitempty"`
|
Address string `description:"Datadog's address." json:"address,omitempty" toml:"address,omitempty" yaml:"address,omitempty"`
|
||||||
PushInterval Duration `description:"DataDog push interval." json:"pushInterval,omitempty" toml:"pushInterval,omitempty" yaml:"pushInterval,omitempty" export:"true"`
|
PushInterval Duration `description:"Datadog push interval." json:"pushInterval,omitempty" toml:"pushInterval,omitempty" yaml:"pushInterval,omitempty" export:"true"`
|
||||||
AddEntryPointsLabels bool `description:"Enable metrics on entry points." json:"addEntryPointsLabels,omitempty" toml:"addEntryPointsLabels,omitempty" yaml:"addEntryPointsLabels,omitempty" export:"true"`
|
AddEntryPointsLabels bool `description:"Enable metrics on entry points." json:"addEntryPointsLabels,omitempty" toml:"addEntryPointsLabels,omitempty" yaml:"addEntryPointsLabels,omitempty" export:"true"`
|
||||||
AddServicesLabels bool `description:"Enable metrics on services." json:"addServicesLabels,omitempty" toml:"addServicesLabels,omitempty" yaml:"addServicesLabels,omitempty" export:"true"`
|
AddServicesLabels bool `description:"Enable metrics on services." json:"addServicesLabels,omitempty" toml:"addServicesLabels,omitempty" yaml:"addServicesLabels,omitempty" export:"true"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// SetDefaults sets the default values.
|
// SetDefaults sets the default values.
|
||||||
func (d *DataDog) SetDefaults() {
|
func (d *Datadog) SetDefaults() {
|
||||||
d.Address = "localhost:8125"
|
d.Address = "localhost:8125"
|
||||||
d.PushInterval = Duration(10 * time.Second)
|
d.PushInterval = Duration(10 * time.Second)
|
||||||
d.AddEntryPointsLabels = true
|
d.AddEntryPointsLabels = true
|
||||||
|
|
Loading…
Reference in a new issue