Marco Jantke
074b31b5e9
respond with 503 on empty backend
2017-07-19 19:28:24 +02:00
Ludovic Fernandez
2e84b1e556
Enhance integration tests
...
* refactor: remove unused code.
* refactor: factorize Traefik cmd start.
* refactor(whitelist): minor change.
* refactor(accesslog): better use of checker.
* refactor(errorpages): factorize containers IP variables.
* refactor(integration): refactor cmdTraefikWithConfigFile.
2017-07-10 14:58:31 +02:00
Ben Parli
121c057b90
Custom Error Pages ( #1675 )
...
* custom error pages
2017-07-01 01:04:18 +02:00
Marco Jantke
0055965295
add status code to request duration metric
2017-06-26 18:21:28 +02:00
Marco Jantke
f79317a435
retry only on real network errors
...
Now retries only happen when actual network errors occur and not only
anymore based on the HTTP status code. This is because the backend could
also send this status codes as their normal interface and in that case
we don't want to retry.
2017-06-19 20:13:46 +02:00
Fernandez Ludovic
2a578748fd
Merge branch 'v1.3'
2017-06-14 22:26:35 +02:00
Fernandez Ludovic
d87c4d89e9
fix: Double GZIP.
2017-06-14 21:13:38 +02:00
Marco Jantke
885b9f371c
enable logging to stdout for access logs
2017-06-13 23:43:38 +02:00
Daniel Tomcej
f275e4ad3c
Create Header Middleware
2017-06-13 12:34:17 +02:00
Fernandez Ludovic
7399a83c74
refactor: Use Statefull interface in access log.
2017-06-09 23:55:49 +02:00
Fernandez Ludovic
18c3d8dc62
test: add AddPrefix test.
2017-06-09 23:55:49 +02:00
Fernandez Ludovic
a1a0420314
test: use MustNewRequest.
2017-06-09 23:55:49 +02:00
Fernandez Ludovic
63f9bccf9f
refactor: fix typos.
...
refactor: typo in whitelister file name.
2017-06-09 23:55:49 +02:00
Fernandez Ludovic
18d11e02d0
test: simplify stripPrefix* tests.
2017-06-09 23:55:49 +02:00
Marco Jantke
e007bb7546
add metrics for backend_retries_total
2017-06-07 08:56:50 +02:00
Richard Shepherd
a9216e24f5
Add JSON as access logging format
2017-06-06 16:26:22 +02:00
Fernandez Ludovic
b6c5c14447
refactor: Enhance rules tests.
...
- refactor: change incorrect package.
- refactor: test readability.
2017-05-31 10:34:00 +02:00
Fernandez Ludovic
cbccdd51c5
refactor: Logs & errors review.
...
- log & error: remove format if not necessary, add if necessary.
- add constants for k8s annotations.
- fix typos
2017-05-30 23:33:27 +02:00
Fernandez Ludovic
2833d68f15
Merge branch 'v1.3' into merge-back-1_3_0-rc3
2017-05-24 20:39:38 +02:00
Richard Shepherd
64e8b31d49
Switch access logging to logrus
2017-05-24 14:20:42 +02:00
Josh Toft
bc0121808a
Fix behavior for PathPrefixStrip
...
When pushing data to downstream proxies; malformed requests were being
sent.
The corrected behavior is as follows:
| Route Stripped | URL | Passed to Backend |
| ----------------- | ---------------------- | ------------------ |
| / | / | / |
| Route Stripped | URL | Passed to Backend |
| ----------------- | ---------------------- | ------------------ |
| /stat | /stat | / |
| /stat | /stat/ | / |
| /stat | /status | /status |
| /stat | /stat/us | /us |
| Route Stripped | URL | Passed to Backend |
| ----------------- | ---------------------- | ------------------ |
| /stat/ | /stat | /stat |
| /stat/ | /stat/ | / |
| /stat/ | /status | /status |
| /stat/ | /stat/us | /us |
Prior, we could strip the prefixing `/`, and we'd also ignore the case
where you want to serve something like `/api` as both the index and as a
subpath.
Additionally, this should resolve a myriad of issues relating to
kubernetes ingress `PathPrefixStrip`.
2017-05-24 10:50:12 +02:00
Fernandez Ludovic
8ad31d6eb4
Merge remote-tracking branch 'upstream/v1.3' into merge-v1_3
2017-05-22 11:38:28 +02:00
tanyadegurechaff
987ae92f53
Create log folder if not present
2017-05-19 15:49:02 +02:00
MaZderMind
5f0b215e90
IP Whitelists for Frontend (with Docker- & Kubernetes-Provider Support)
2017-05-19 15:19:29 +02:00
Emile Vauge
f8ea19d29c
Merge branch 'v1.3' into merge-v1.3.0-rc2-master
2017-05-17 11:44:53 +02:00
Emile Vauge
48a91d05b5
Add Recover tests
2017-05-15 09:17:33 +02:00
Emile Vauge
111251da05
Adds Panic Recover middleware
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2017-05-15 09:17:33 +02:00
Emile Vauge
71cec1580b
Fix stats responseRecorder Hijacker
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2017-05-15 09:17:33 +02:00
Fernandez Ludovic
d2c8824902
refactor: restore "First stage of access logging middleware."
...
This reverts commit 82651985c4
.
2017-05-11 16:27:13 +02:00
Emile Vauge
82651985c4
Revert "First stage of access logging middleware. Initially without any output appenders."
...
This reverts commit 73a1b172ed
.
2017-05-03 17:30:31 +02:00
Stéphane Seguin
bf3673879f
Fix regex with PathStrip
2017-04-28 17:33:14 +02:00
ssttevee
aa8375e82b
added path replacement rule
2017-04-26 23:33:32 -07:00
Richard Shepherd
73a1b172ed
First stage of access logging middleware. Initially without any output appenders.
2017-04-23 00:46:45 +02:00
Martin Baillie
fa683fa7e4
Pass stripped prefix downstream as header
2017-04-16 19:24:26 +10:00
Matevz Mihalic
f324983946
Fix metrics registering
2017-04-11 22:36:55 +02:00
Kent Rancourt
7357417f48
Allow usersFile to be specified for basic or digest auth
2017-03-09 20:24:44 -05:00
Bilal Amarni
86fd5b4c97
Set a NopCloser request body with retry middleware
...
As the http client always closes the request body,
this makes sure the request can be retried if needed.
Fixes #1008
2017-02-02 17:24:49 +01:00
Alberto
fa1090b6eb
Improving instrumentation. ( #1042 )
2017-01-17 18:14:13 +01:00
enxebre
175659a3dd
Support for Metrics and Prometheus.
2017-01-16 15:00:16 +01:00
Vincent Demeester
8a348423ae
Import order as goimports does
...
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-30 19:04:02 +01:00
Emile Vauge
bef55db120
Merge branch 'master' into addprefix
2016-12-20 12:18:37 +01:00
Julien Salleyron
d9fc66fdbc
Add Rule AddPrefix
2016-12-19 17:12:52 +01:00
Emile Vauge
3ebfd729cf
Refactor StatsRecorder
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-12-19 15:24:00 +01:00
Ian
94bb7a1435
Add ability to set authenticated user in request header ( #889 )
...
* Add ability to set authenticated user in request header
Some web applications provide the ability to authorize users based on
the authenticated from Basic Auth. This patch provides a way to set a
key to which the authenticated user can be set in the Header.
For example, if I set `HeaderValue = "X-WebAuth-User"` and authenticate,
my application will be able to read my user name from that header and
provide me with the proper access.
This fixes #802
2016-12-16 16:42:51 +01:00
Emile Vauge
7c375e8fd9
Fix ResponseRecorder Flush
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-10-26 16:26:19 +02:00
Emile Vauge
e72e65858f
Challenge certs PEM encoding
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:25 +02:00
Emile Vauge
a42845502e
Add ACME store
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:17 +02:00
tuier
a58750992d
lint
2016-09-28 23:04:18 +01:00
tuier
17546c3a08
Add HTTP compression
2016-09-28 23:04:18 +01:00
Emile Vauge
11297b38c5
Remove misused Fatal*
2016-08-19 10:36:54 +02:00