Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug 1903999: Httplog response code is always zero #494

Conversation

p0lyn0mial
Copy link

It turned out that httplog was suddenly disabled for health checks on the paths like /healthz or /readyz.

I suspect it was disabled because by default we attach a stack trace for requests with >= 500 HTTP status code which can be verbose (an example below).

I decided to expose a function that allows for disabling putting a stack trace into to log only for /readyz handler. Since an HTTP 500 is considered a normal response to signal a LB to stop sending traffic for that path.

A response with a stack trace:

 httplog.go:94] "HTTP" verb="GET" URI="/readyz" latency="3.53127ms" userAgent="ELB-HealthChecker/2.0" srcIP="10.0.91.198:58092" resp=500 statusStack="\ngoroutine 286383 [running]:\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/httplog.(*respLogger).recordStatus(0xc00ec44ee0, 0x1f4)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/httplog/httplog.go:248 +0xcf\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/httplog.(*respLogger).WriteHeader(0xc00ec44ee0, 0x1f4)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/httplog/httplog.go:227 +0x35\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*baseTimeoutWriter).WriteHeader(0xc00ea69ec0, 0x1f4)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters/timeout.go:226 +0xb2\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics.(*ResponseWriterDelegator).WriteHeader(0xc0375840f0, 0x1f4)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics/metrics.go:571 +0x45\nnet/http.Error(0x5669c60, 0xc00937be40, 0xc0375daa00, 0x625, 0x1f4)\n\t/usr/lib/golang/src/net/http/server.go:2066 +0x1f6\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/healthz.handleRootHealth.func1(0x5669c60, 0xc00937be40, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/healthz/healthz.go:258 +0x64b\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics.InstrumentHandlerFunc.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/metrics/metrics.go:474 +0x2ba\nnet/http.HandlerFunc.ServeHTTP(0xc00f75fae0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux.(*pathHandler).ServeHTTP(0xc02dd9db40, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux/pathrecorder.go:241 +0x6fa\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux.(*PathRecorderMux).ServeHTTP(0xc004916070, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/mux/pathrecorder.go:234 +0x8c\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server.director.ServeHTTP(0x4da0ead, 0xf, 0xc0009e3050, 0xc004916070, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/handler.go:154 +0x87f\nk8s.io/kubernetes/openshift-kube-apiserver/openshiftkubeapiserver.withOAuthInfo.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/openshift-kube-apiserver/openshiftkubeapiserver/patch_handlerchain.go:54 +0x6f\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd530, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackCompleted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:95 +0x165\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd560, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAuthorization.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters/authorization.go:64 +0x59a\nnet/http.HandlerFunc.ServeHTTP(0xc00a251b80, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackStarted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:71 +0x186\nnet/http.HandlerFunc.ServeHTTP(0xc00a251bc0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackCompleted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:95 +0x165\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd5f0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8d00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.WithPriorityAndFairness.func1.4()\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters/priority-and-fairness.go:127 +0x3c6\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol.(*configController).Handle.func1()\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/apf_filter.go:122 +0x15e\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/queueset.(*request).Finish(0xc029e20bb0, 0xc037920b40, 0xc0173a8390)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/queueset/queueset.go:319 +0x42\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol.(*configController).Handle(0xc0009246e0, 0x56704a0, 0xc014d41fb0, 0xc029e20b00, 0x56711a0, 0xc037188e80, 0xc0173a82a0, 0xc0173a82b0, 0xc037920a20)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/util/flowcontrol/apf_filter.go:115 +0x7aa\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.WithPriorityAndFairness.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters/priority-and-fairness.go:130 +0x5c3\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd680, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackStarted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:71 +0x186\nnet/http.HandlerFunc.ServeHTTP(0xc00a251c00, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackCompleted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:95 +0x165\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd710, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithImpersonation.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters/impersonation.go:50 +0x23e6\nnet/http.HandlerFunc.ServeHTTP(0xc00a251c40, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackStarted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:71 +0x186\nnet/http.HandlerFunc.ServeHTTP(0xc00a251c80, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackCompleted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:95 +0x165\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd7a0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAudit.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters/audit.go:54 +0x750\nnet/http.HandlerFunc.ServeHTTP(0xc00a251cc0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackStarted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:71 +0x186\nnet/http.HandlerFunc.ServeHTTP(0xc00a251d00, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackCompleted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:95 +0x165\nnet/http.HandlerFunc.ServeHTTP(0xc0045dd8c0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8c00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters.WithAuthentication.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8a00)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filters/authentication.go:70 +0x6d2\nnet/http.HandlerFunc.ServeHTTP(0xc00e13fa90, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8a00)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency.trackStarted.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8900)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/endpoints/filterlatency/filterlatency.go:80 +0x38a\nnet/http.HandlerFunc.ServeHTTP(0xc00a251d80, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8900)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.WithCORS.func1(0x7f0695d9e438, 0xc00937be20, 0xc0371f8900)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters/cors.go:75 +0x1d9\nnet/http.HandlerFunc.ServeHTTP(0xc00306aba0, 0x7f0695d9e438, 0xc00937be20, 0xc0371f8900)\n\t/usr/lib/golang/src/net/http/server.go:2054 +0x44\nk8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP.func1(0xc0385796e0, 0xc006615960, 0x56712a0, 0xc00937be20, 0xc0371f8900)\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters/timeout.go:111 +0xb8\ncreated by k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP\n\t/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apiserver/pkg/server/filters/timeout.go:97 +0x1cc\n" addedInfo="\nlogging error output: \"[+]ping ok\\n[+]log ok\\n[+]etcd ok\\n[+]api-openshift-apiserver-available ok\\n[+]api-openshift-oauth-apiserver-available ok\\n[+]informer-sync ok\\n[+]poststarthook/openshift.io-StartOAuthInformers ok\\n[+]poststarthook/start-kube-apiserver-admission-initializer ok\\n[+]poststarthook/quota.openshift.io-clusterquotamapping ok\\n[+]poststarthook/openshift.io-startkubeinformers ok\\n[+]poststarthook/openshift.io-openshift-apiserver-reachable ok\\n[+]poststarthook/openshift.io-oauth-apiserver-reachable ok\\n[+]poststarthook/openshift.io-TokenTimeoutUpdater ok\\n[+]poststarthook/generic-apiserver-start-informers ok\\n[+]poststarthook/priority-and-fairness-config-consumer ok\\n[+]poststarthook/priority-and-fairness-filter ok\\n[+]poststarthook/start-apiextensions-informers ok\\n[+]poststarthook/start-apiextensions-controllers ok\\n[+]poststarthook/crd-informer-synced ok\\n[+]poststarthook/bootstrap-controller ok\\n[+]poststarthook/rbac/bootstrap-roles ok\\n[+]poststarthook/scheduling/bootstrap-system-priority-classes ok\\n[+]poststarthook/priority-and-fairness-config-producer ok\\n[+]poststarthook/start-cluster-authentication-info-controller ok\\n[+]poststarthook/aggregator-reload-proxy-client-cert ok\\n[+]poststarthook/start-kube-aggregator-informers ok\\n[+]poststarthook/apiservice-registration-controller ok\\n[+]poststarthook/apiservice-status-available-controller ok\\n[+]poststarthook/apiservice-wait-for-first-sync ok\\n[+]poststarthook/kube-apiserver-autoregistration ok\\n[+]autoregister-completion ok\\n[+]poststarthook/apiservice-openapi-controller ok\\n[-]shutdown failed: reason withheld\\nreadyz check failed\\n\"\n"

a response without the stack trace:

I1216 15:41:43.108966      17 httplog.go:94] "HTTP" verb="GET" URI="/readyz" latency="4.899291ms" userAgent="ELB-HealthChecker/2.0" srcIP="10.0.221.206:22463" resp=500

TODO:

  • check watch endpoint

@p0lyn0mial
Copy link
Author

/assign @sttts

@p0lyn0mial
Copy link
Author

/retest

@p0lyn0mial p0lyn0mial changed the title httplog's response code for /readyz should be properly reported Bug 1903999: Httplog response code is always zero Jan 11, 2021
@openshift-ci-robot openshift-ci-robot added the bugzilla/severity-high Referenced Bugzilla bug's severity is high for the branch this PR is targeting. label Jan 11, 2021
@openshift-ci-robot
Copy link

@p0lyn0mial: This pull request references Bugzilla bug 1903999, which is valid. The bug has been moved to the POST state.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target release (4.7.0) matches configured target release for branch (4.7.0)
  • bug is in the state ASSIGNED, which is one of the valid states (NEW, ASSIGNED, ON_DEV, POST, POST)

In response to this:

Bug 1903999: Httplog response code is always zero

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-ci-robot openshift-ci-robot added the bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting. label Jan 11, 2021
@p0lyn0mial p0lyn0mial force-pushed the upstream-healthz-httplog-status branch 2 times, most recently from eb3ed69 to f21cea3 Compare January 13, 2021 11:29
klog.V(2).Infof("%s check failed: %s\n%v", strings.Join(failedChecks, ","), name, failedVerboseLogOutput.String())
http.Error(httplog.Unlogged(r, w), fmt.Sprintf("%s%s check failed", individualCheckOutput.String(), name), http.StatusInternalServerError)
http.Error(w, fmt.Sprintf("%s%s check failed", individualCheckOutput.String(), name), http.StatusInternalServerError)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why this change?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to capture the status code and put it in the log file.

httplog.Unlogged returns the original ResponseWriter, or w if it is not our inserted logger.

@p0lyn0mial p0lyn0mial force-pushed the upstream-healthz-httplog-status branch from f21cea3 to 4fea27d Compare January 13, 2021 12:46
@p0lyn0mial
Copy link
Author

/retest

2 similar comments
@p0lyn0mial
Copy link
Author

/retest

@p0lyn0mial
Copy link
Author

/retest

… it doesn't log stack trace when HTTP 500 response is returned
@p0lyn0mial p0lyn0mial force-pushed the upstream-healthz-httplog-status branch from 4fea27d to 96dcb7f Compare January 14, 2021 09:46
@sttts
Copy link

sttts commented Jan 14, 2021

/lgtm
/approve

@openshift-ci-robot openshift-ci-robot added the lgtm Indicates that a PR is ready to be merged. label Jan 14, 2021
@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: p0lyn0mial, sttts

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci-robot openshift-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 14, 2021
@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

2 similar comments
@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

3 similar comments
@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-merge-robot openshift-merge-robot merged commit ccd79f0 into openshift:master Jan 15, 2021
@openshift-ci-robot
Copy link

@p0lyn0mial: All pull requests linked via external trackers have merged:

Bugzilla bug 1903999 has been moved to the MODIFIED state.

In response to this:

Bug 1903999: Httplog response code is always zero

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. bugzilla/severity-high Referenced Bugzilla bug's severity is high for the branch this PR is targeting. bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting. lgtm Indicates that a PR is ready to be merged. vendor-update Touching vendor dir or related files
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants