ExternalDependency middleware to report external dependencies
(next http.Handler)
| 21 | |
| 22 | // ExternalDependency middleware to report external dependencies |
| 23 | func ExternalDependency(next http.Handler) http.Handler { |
| 24 | return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
| 25 | var edc ExternalDependencyContext |
| 26 | edw := externalDependencyWriter{ |
| 27 | ResponseWriter: w, |
| 28 | edc: &edc, |
| 29 | } |
| 30 | r = r.WithContext(ContextWithExternalDependency(r.Context(), &edc)) |
| 31 | next.ServeHTTP(&edw, r) |
| 32 | }) |
| 33 | } |
| 34 | |
| 35 | func AddExternalDependency(ctx context.Context, name string, dur time.Duration) { |
| 36 | ec := ExternalDependencyContextFromContext(ctx) |
searching dependent graphs…