newLogResponseWriter returns a loggingResponseWriter which uses's the logger from r, or falls back to logf. If a nil logger is given, the logs are discarded.
(logf logger.Logf, w http.ResponseWriter, r *http.Request)
| 677 | // from r, or falls back to logf. If a nil logger is given, the logs are |
| 678 | // discarded. |
| 679 | func newLogResponseWriter(logf logger.Logf, w http.ResponseWriter, r *http.Request) *loggingResponseWriter { |
| 680 | if lg, ok := logger.LogfKey.ValueOk(r.Context()); ok && lg != nil { |
| 681 | logf = lg |
| 682 | } |
| 683 | if logf == nil { |
| 684 | logf = logger.Discard |
| 685 | } |
| 686 | return &loggingResponseWriter{ |
| 687 | ResponseWriter: w, |
| 688 | ctx: r.Context(), |
| 689 | logf: logf, |
| 690 | } |
| 691 | } |
| 692 | |
| 693 | // WriteHeader implements [http.ResponseWriter]. |
| 694 | func (lg *loggingResponseWriter) WriteHeader(statusCode int) { |