{"action":"created","issue":{"url":"https://api.github.com/repos/heptio/contour/issues/730","repository_url":"https://api.github.com/repos/heptio/contour","labels_url":"https://api.github.com/repos/heptio/contour/issues/730/labels{/name}","comments_url":"https://api.github.com/repos/heptio/contour/issues/730/comments","events_url":"https://api.github.com/repos/heptio/contour/issues/730/events","html_url":"https://github.com/heptio/contour/pull/730","id":366797401,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIwMzgyNzE4","number":730,"title":"append x-request-start header to incoming HTTP requests","user":{"login":"yob","id":8132,"node_id":"MDQ6VXNlcjgxMzI=","avatar_url":"https://avatars2.githubusercontent.com/u/8132?v=4","gravatar_id":"","url":"https://api.github.com/users/yob","html_url":"https://github.com/yob","followers_url":"https://api.github.com/users/yob/followers","following_url":"https://api.github.com/users/yob/following{/other_user}","gists_url":"https://api.github.com/users/yob/gists{/gist_id}","starred_url":"https://api.github.com/users/yob/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yob/subscriptions","organizations_url":"https://api.github.com/users/yob/orgs","repos_url":"https://api.github.com/users/yob/repos","events_url":"https://api.github.com/users/yob/events{/privacy}","received_events_url":"https://api.github.com/users/yob/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/heptio/contour/milestones/9","html_url":"https://github.com/heptio/contour/milestone/9","labels_url":"https://api.github.com/repos/heptio/contour/milestones/9/labels","id":3343063,"node_id":"MDk6TWlsZXN0b25lMzM0MzA2Mw==","number":9,"title":"0.7.0","description":"- ingress route beta 2\r\n- compression \r\n- improve interop between ingress and ingressroute\r\n- wildcard TLS\r\n- bug fixes\r\n","creator":{"login":"davecheney","id":7171,"node_id":"MDQ6VXNlcjcxNzE=","avatar_url":"https://avatars0.githubusercontent.com/u/7171?v=4","gravatar_id":"","url":"https://api.github.com/users/davecheney","html_url":"https://github.com/davecheney","followers_url":"https://api.github.com/users/davecheney/followers","following_url":"https://api.github.com/users/davecheney/following{/other_user}","gists_url":"https://api.github.com/users/davecheney/gists{/gist_id}","starred_url":"https://api.github.com/users/davecheney/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davecheney/subscriptions","organizations_url":"https://api.github.com/users/davecheney/orgs","repos_url":"https://api.github.com/users/davecheney/repos","events_url":"https://api.github.com/users/davecheney/events{/privacy}","received_events_url":"https://api.github.com/users/davecheney/received_events","type":"User","site_admin":false},"open_issues":46,"closed_issues":40,"state":"open","created_at":"2018-05-14T06:35:21Z","updated_at":"2018-10-05T10:41:20Z","due_on":"2018-10-26T07:00:00Z","closed_at":null},"comments":2,"created_at":"2018-10-04T13:44:39Z","updated_at":"2018-10-06T14:40:30Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/heptio/contour/pulls/730","html_url":"https://github.com/heptio/contour/pull/730","diff_url":"https://github.com/heptio/contour/pull/730.diff","patch_url":"https://github.com/heptio/contour/pull/730.patch"},"body":"Some tracing applications support reporting on queuing time for incoming requests. Generally this is implemented by adding a `X-Request-Start` timestamp header to the requests as early as possible in the request path.\r\n\r\n[New Relic](https://docs.newrelic.com/docs/apm/applications-menu/features/request-queue-server-configuration-examples) and [datadog](https://github.com/DataDog/dd-trace-rb/blob/master/docs/GettingStarted.md#http-request-queuing) are two examples of tools that support this header.\r\n\r\nThe [envoy docs](https://www.envoyproxy.io/docs/envoy/latest/configuration/http_conn_man/headers#custom-request-response-headers) say:\r\n\r\n> Custom request/response headers can be added to a request/response at\r\n> the weighted cluster, route, virtual host, and/or global route\r\n> configuration level\r\n\r\nI've opted to add them at the weighted cluster level, based on a [slack discussion with @stevesloka](https://kubernetes.slack.com/archives/C8XRH2R4J/p1538487259000100). I'm happy to change that if requested though - my envoy knowledge is pretty low, and I'm not sure what the tradeoffs of each location are.\r\n\r\nThe header is added to all requests unconditionally, as suggested in the original github issue.\r\n\r\nFixes #646"},"comment":{"url":"https://api.github.com/repos/heptio/contour/issues/comments/427578841","html_url":"https://github.com/heptio/contour/pull/730#issuecomment-427578841","issue_url":"https://api.github.com/repos/heptio/contour/issues/730","id":427578841,"node_id":"MDEyOklzc3VlQ29tbWVudDQyNzU3ODg0MQ==","user":{"login":"yob","id":8132,"node_id":"MDQ6VXNlcjgxMzI=","avatar_url":"https://avatars2.githubusercontent.com/u/8132?v=4","gravatar_id":"","url":"https://api.github.com/users/yob","html_url":"https://github.com/yob","followers_url":"https://api.github.com/users/yob/followers","following_url":"https://api.github.com/users/yob/following{/other_user}","gists_url":"https://api.github.com/users/yob/gists{/gist_id}","starred_url":"https://api.github.com/users/yob/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yob/subscriptions","organizations_url":"https://api.github.com/users/yob/orgs","repos_url":"https://api.github.com/users/yob/repos","events_url":"https://api.github.com/users/yob/events{/privacy}","received_events_url":"https://api.github.com/users/yob/received_events","type":"User","site_admin":false},"created_at":"2018-10-06T14:40:30Z","updated_at":"2018-10-06T14:40:30Z","author_association":"CONTRIBUTOR","body":"> Test flake is #705, please rebase\r\n\r\ndone"}}
{"actor":{"display_login":"yob"}}