├── .gitignore ├── .travis.yml ├── Gopkg.lock ├── Gopkg.toml ├── LICENSE.txt ├── README.md ├── doc.go ├── logging ├── logrus │ ├── capture_middleware.go │ ├── capture_test.go │ ├── capture_tripperware.go │ ├── ctxlogrus │ │ ├── context.go │ │ ├── doc.go │ │ ├── examples_test.go │ │ └── noop.go │ ├── doc.go │ ├── examples_test.go │ ├── get_body_go17.go │ ├── get_body_go18.go │ ├── httplogger.go │ ├── middleware.go │ ├── middleware_test.go │ ├── options.go │ ├── shared_test.go │ ├── tripperware.go │ └── tripperware_test.go └── options.go ├── makefile ├── metrics ├── doc.go ├── middleware.go ├── prometheus │ ├── client.go │ ├── client_test.go │ ├── meta.go │ ├── options.go │ └── server.go ├── reporter.go ├── tripperware.go ├── types_test.go ├── wares_test.go ├── wrapped_body.go └── wrapped_writer.go ├── middleware.go ├── retry ├── backoff.go ├── context.go ├── doc.go ├── get_body_go17.go ├── get_body_go18.go ├── get_body_go18_test.go ├── integration_test.go ├── options.go ├── remove_body_go17_test.go ├── remove_body_go18_test.go ├── test.txt └── tripperware.go ├── scripts └── test_all.sh ├── tags ├── chi │ └── chi.go ├── context.go ├── doc.go ├── integration_test.go ├── middleware.go ├── options.go ├── options_test.go └── tripperware.go ├── testing ├── certs │ ├── gen_cert.sh │ ├── localhost.crt │ └── localhost.key ├── mutex_rw.go ├── pingback.go ├── testserver │ └── main.go └── wares_suite.go ├── tracing ├── debug │ ├── doc.go │ ├── middleware.go │ ├── options.go │ └── tripperware.go └── opentracing │ ├── doc.go │ ├── id_extract.go │ ├── integration_test.go │ ├── middleware.go │ ├── options.go │ └── tripperware.go ├── tripperware.go ├── tripperware_test.go ├── wrapped_responsewriter.go ├── wrapped_responsewriter_go17.go └── wrapped_responsewriter_go18.go /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/.travis.yml -------------------------------------------------------------------------------- /Gopkg.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/Gopkg.lock -------------------------------------------------------------------------------- /Gopkg.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/Gopkg.toml -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/README.md -------------------------------------------------------------------------------- /doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/doc.go -------------------------------------------------------------------------------- /logging/logrus/capture_middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/capture_middleware.go -------------------------------------------------------------------------------- /logging/logrus/capture_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/capture_test.go -------------------------------------------------------------------------------- /logging/logrus/capture_tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/capture_tripperware.go -------------------------------------------------------------------------------- /logging/logrus/ctxlogrus/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/ctxlogrus/context.go -------------------------------------------------------------------------------- /logging/logrus/ctxlogrus/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/ctxlogrus/doc.go -------------------------------------------------------------------------------- /logging/logrus/ctxlogrus/examples_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/ctxlogrus/examples_test.go -------------------------------------------------------------------------------- /logging/logrus/ctxlogrus/noop.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/ctxlogrus/noop.go -------------------------------------------------------------------------------- /logging/logrus/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/doc.go -------------------------------------------------------------------------------- /logging/logrus/examples_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/examples_test.go -------------------------------------------------------------------------------- /logging/logrus/get_body_go17.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/get_body_go17.go -------------------------------------------------------------------------------- /logging/logrus/get_body_go18.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/get_body_go18.go -------------------------------------------------------------------------------- /logging/logrus/httplogger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/httplogger.go -------------------------------------------------------------------------------- /logging/logrus/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/middleware.go -------------------------------------------------------------------------------- /logging/logrus/middleware_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/middleware_test.go -------------------------------------------------------------------------------- /logging/logrus/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/options.go -------------------------------------------------------------------------------- /logging/logrus/shared_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/shared_test.go -------------------------------------------------------------------------------- /logging/logrus/tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/tripperware.go -------------------------------------------------------------------------------- /logging/logrus/tripperware_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/logrus/tripperware_test.go -------------------------------------------------------------------------------- /logging/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/logging/options.go -------------------------------------------------------------------------------- /makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/makefile -------------------------------------------------------------------------------- /metrics/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/doc.go -------------------------------------------------------------------------------- /metrics/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/middleware.go -------------------------------------------------------------------------------- /metrics/prometheus/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/prometheus/client.go -------------------------------------------------------------------------------- /metrics/prometheus/client_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/prometheus/client_test.go -------------------------------------------------------------------------------- /metrics/prometheus/meta.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/prometheus/meta.go -------------------------------------------------------------------------------- /metrics/prometheus/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/prometheus/options.go -------------------------------------------------------------------------------- /metrics/prometheus/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/prometheus/server.go -------------------------------------------------------------------------------- /metrics/reporter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/reporter.go -------------------------------------------------------------------------------- /metrics/tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/tripperware.go -------------------------------------------------------------------------------- /metrics/types_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/types_test.go -------------------------------------------------------------------------------- /metrics/wares_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/wares_test.go -------------------------------------------------------------------------------- /metrics/wrapped_body.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/wrapped_body.go -------------------------------------------------------------------------------- /metrics/wrapped_writer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/metrics/wrapped_writer.go -------------------------------------------------------------------------------- /middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/middleware.go -------------------------------------------------------------------------------- /retry/backoff.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/backoff.go -------------------------------------------------------------------------------- /retry/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/context.go -------------------------------------------------------------------------------- /retry/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/doc.go -------------------------------------------------------------------------------- /retry/get_body_go17.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/get_body_go17.go -------------------------------------------------------------------------------- /retry/get_body_go18.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/get_body_go18.go -------------------------------------------------------------------------------- /retry/get_body_go18_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/get_body_go18_test.go -------------------------------------------------------------------------------- /retry/integration_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/integration_test.go -------------------------------------------------------------------------------- /retry/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/options.go -------------------------------------------------------------------------------- /retry/remove_body_go17_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/remove_body_go17_test.go -------------------------------------------------------------------------------- /retry/remove_body_go18_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/remove_body_go18_test.go -------------------------------------------------------------------------------- /retry/test.txt: -------------------------------------------------------------------------------- 1 | abc -------------------------------------------------------------------------------- /retry/tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/retry/tripperware.go -------------------------------------------------------------------------------- /scripts/test_all.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/scripts/test_all.sh -------------------------------------------------------------------------------- /tags/chi/chi.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/chi/chi.go -------------------------------------------------------------------------------- /tags/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/context.go -------------------------------------------------------------------------------- /tags/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/doc.go -------------------------------------------------------------------------------- /tags/integration_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/integration_test.go -------------------------------------------------------------------------------- /tags/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/middleware.go -------------------------------------------------------------------------------- /tags/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/options.go -------------------------------------------------------------------------------- /tags/options_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/options_test.go -------------------------------------------------------------------------------- /tags/tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tags/tripperware.go -------------------------------------------------------------------------------- /testing/certs/gen_cert.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/certs/gen_cert.sh -------------------------------------------------------------------------------- /testing/certs/localhost.crt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/certs/localhost.crt -------------------------------------------------------------------------------- /testing/certs/localhost.key: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/certs/localhost.key -------------------------------------------------------------------------------- /testing/mutex_rw.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/mutex_rw.go -------------------------------------------------------------------------------- /testing/pingback.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/pingback.go -------------------------------------------------------------------------------- /testing/testserver/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/testserver/main.go -------------------------------------------------------------------------------- /testing/wares_suite.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/testing/wares_suite.go -------------------------------------------------------------------------------- /tracing/debug/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/debug/doc.go -------------------------------------------------------------------------------- /tracing/debug/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/debug/middleware.go -------------------------------------------------------------------------------- /tracing/debug/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/debug/options.go -------------------------------------------------------------------------------- /tracing/debug/tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/debug/tripperware.go -------------------------------------------------------------------------------- /tracing/opentracing/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/opentracing/doc.go -------------------------------------------------------------------------------- /tracing/opentracing/id_extract.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/opentracing/id_extract.go -------------------------------------------------------------------------------- /tracing/opentracing/integration_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/opentracing/integration_test.go -------------------------------------------------------------------------------- /tracing/opentracing/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/opentracing/middleware.go -------------------------------------------------------------------------------- /tracing/opentracing/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/opentracing/options.go -------------------------------------------------------------------------------- /tracing/opentracing/tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tracing/opentracing/tripperware.go -------------------------------------------------------------------------------- /tripperware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tripperware.go -------------------------------------------------------------------------------- /tripperware_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/tripperware_test.go -------------------------------------------------------------------------------- /wrapped_responsewriter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/wrapped_responsewriter.go -------------------------------------------------------------------------------- /wrapped_responsewriter_go17.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/wrapped_responsewriter_go17.go -------------------------------------------------------------------------------- /wrapped_responsewriter_go18.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/improbable-eng/go-httpwares/HEAD/wrapped_responsewriter_go18.go --------------------------------------------------------------------------------