fix: Datadog case.

This commit is contained in:
Ludovic Fernandez 2019-09-02 12:18:04 +02:00 committed by Traefiker Bot
parent 259c7adc81
commit 306e5081d9
22 changed files with 87 additions and 87 deletions

View file

@ -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))

View file

@ -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
``` ```

View file

@ -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)

View file

@ -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
``` ```

View file

@ -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)

View file

@ -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.

View file

@ -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.

View file

@ -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

View file

@ -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

View file

@ -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':

View file

@ -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,

View file

@ -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

View file

@ -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"},

View file

@ -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

View file

@ -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

View file

@ -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"`
} }

View file

@ -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"

View file

@ -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() {

View file

@ -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 {

View file

@ -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
} }

View file

@ -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
} }

View file

@ -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