@@ -12,6 +12,7 @@ import (
12
12
"github.com/go-kit/kit/log"
13
13
"github.com/go-kit/kit/tracing/opentracing"
14
14
httptransport "github.com/go-kit/kit/transport/http"
15
+ "github.com/go-kit/kit/circuitbreaker"
15
16
"github.com/gorilla/mux"
16
17
"github.com/microservices-demo/user/users"
17
18
stdopentracing "github.com/opentracing/opentracing-go"
@@ -37,70 +38,70 @@ func MakeHTTPHandler(ctx context.Context, e Endpoints, logger log.Logger, tracer
37
38
38
39
r .Methods ("GET" ).Path ("/login" ).Handler (httptransport .NewServer (
39
40
ctx ,
40
- e .LoginEndpoint ,
41
+ circuitbreaker . Hystrix ( "Login" )( e .LoginEndpoint ) ,
41
42
decodeLoginRequest ,
42
43
encodeResponse ,
43
44
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "GET /login" , logger )))... ,
44
45
))
45
46
r .Methods ("POST" ).Path ("/register" ).Handler (httptransport .NewServer (
46
47
ctx ,
47
- e .RegisterEndpoint ,
48
+ circuitbreaker . Hystrix ( "Register" )( e .RegisterEndpoint ) ,
48
49
decodeRegisterRequest ,
49
50
encodeResponse ,
50
51
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "POST /register" , logger )))... ,
51
52
))
52
53
r .Methods ("GET" ).PathPrefix ("/customers" ).Handler (httptransport .NewServer (
53
54
ctx ,
54
- e .UserGetEndpoint ,
55
+ circuitbreaker . Hystrix ( "UserGet" )( e .UserGetEndpoint ) ,
55
56
decodeGetRequest ,
56
57
encodeResponse ,
57
58
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "GET /customers" , logger )))... ,
58
59
))
59
60
r .Methods ("GET" ).PathPrefix ("/cards" ).Handler (httptransport .NewServer (
60
61
ctx ,
61
- e .CardGetEndpoint ,
62
+ circuitbreaker . Hystrix ( "CardGet" )( e .CardGetEndpoint ) ,
62
63
decodeGetRequest ,
63
64
encodeResponse ,
64
65
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "GET /cards" , logger )))... ,
65
66
))
66
67
r .Methods ("GET" ).PathPrefix ("/addresses" ).Handler (httptransport .NewServer (
67
68
ctx ,
68
- e .AddressGetEndpoint ,
69
+ circuitbreaker . Hystrix ( "AddressGet" )( e .AddressGetEndpoint ) ,
69
70
decodeGetRequest ,
70
71
encodeResponse ,
71
72
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "GET /addresses" , logger )))... ,
72
73
))
73
74
r .Methods ("POST" ).Path ("/customers" ).Handler (httptransport .NewServer (
74
75
ctx ,
75
- e .UserPostEndpoint ,
76
+ circuitbreaker . Hystrix ( "UserPost" )( e .UserPostEndpoint ) ,
76
77
decodeUserRequest ,
77
78
encodeResponse ,
78
79
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "POST /customers" , logger )))... ,
79
80
))
80
81
r .Methods ("POST" ).Path ("/addresses" ).Handler (httptransport .NewServer (
81
82
ctx ,
82
- e .AddressPostEndpoint ,
83
+ circuitbreaker . Hystrix ( "AddressPost" )( e .AddressPostEndpoint ) ,
83
84
decodeAddressRequest ,
84
85
encodeResponse ,
85
86
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "POST /addresses" , logger )))... ,
86
87
))
87
88
r .Methods ("POST" ).Path ("/cards" ).Handler (httptransport .NewServer (
88
89
ctx ,
89
- e .CardPostEndpoint ,
90
+ circuitbreaker . Hystrix ( "CardPost" )( e .CardPostEndpoint ) ,
90
91
decodeCardRequest ,
91
92
encodeResponse ,
92
93
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "POST /cards" , logger )))... ,
93
94
))
94
95
r .Methods ("DELETE" ).PathPrefix ("/" ).Handler (httptransport .NewServer (
95
96
ctx ,
96
- e .DeleteEndpoint ,
97
+ circuitbreaker . Hystrix ( "Delete" )( e .DeleteEndpoint ) ,
97
98
decodeDeleteRequest ,
98
99
encodeResponse ,
99
100
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "DELETE /" , logger )))... ,
100
101
))
101
102
r .Methods ("GET" ).PathPrefix ("/health" ).Handler (httptransport .NewServer (
102
103
ctx ,
103
- e .HealthEndpoint ,
104
+ circuitbreaker . Hystrix ( "Health" )( e .HealthEndpoint ) ,
104
105
decodeHealthRequest ,
105
106
encodeHealthResponse ,
106
107
append (options , httptransport .ServerBefore (opentracing .FromHTTPRequest (tracer , "GET /health" , logger )))... ,
0 commit comments