k8s.io/kubernetes@v1.29.3/test/integration/logs/benchmark/get-logs.sh (about) 1 #!/usr/bin/env bash 2 3 # Copyright 2018 The Kubernetes Authors. 4 # 5 # Licensed under the Apache License, Version 2.0 (the "License"); 6 # you may not use this file except in compliance with the License. 7 # You may obtain a copy of the License at 8 # 9 # http://www.apache.org/licenses/LICENSE-2.0 10 # 11 # Unless required by applicable law or agreed to in writing, software 12 # distributed under the License is distributed on an "AS IS" BASIS, 13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 # See the License for the specific language governing permissions and 15 # limitations under the License. 16 17 # Usage: get-logs.sh [<job ID>] 18 # 19 # Downloads the latest job output or the one with the specified ID 20 # and prepares running benchmarks for it. 21 22 set -o pipefail 23 set -o errexit 24 set -x 25 26 cd "$(dirname "$0")" 27 28 latest_job () { 29 gsutil cat gs://kubernetes-jenkins/logs/ci-kubernetes-kind-e2e-json-logging/latest-build.txt 30 } 31 32 job=${1:-$(latest_job)} 33 34 rm -rf ci-kubernetes-kind-e2e-json-logging 35 mkdir ci-kubernetes-kind-e2e-json-logging 36 gsutil -m cp -R "gs://kubernetes-jenkins/logs/ci-kubernetes-kind-e2e-json-logging/${job}/*" ci-kubernetes-kind-e2e-json-logging/ 37 38 for i in kube-apiserver kube-controller-manager kube-scheduler; do 39 # Before (container runtime log dump (?)): 40 # 2023-03-07T07:30:52.193301924Z stderr F {"ts":1678174252192.0676,"caller":"scheduler/schedule_one.go:81","msg":"Attempting to schedule pod","v":3,"pod":{"name":"simpletest.rc-zgd47","namespace":"gc-5422"}} 41 # After: 42 # {"ts":1678174252192.0676,"caller":"scheduler/schedule_one.go:81","msg":"Attempting to schedule pod","v":3,"pod":{"name":"simpletest.rc-zgd47","namespace":"gc-5422"}} 43 sed -e 's/^20[^ ]* stderr . //' \ 44 ci-kubernetes-kind-e2e-json-logging/artifacts/kind-control-plane/containers/$i-*.log \ 45 > ci-kubernetes-kind-e2e-json-logging/$i.log; 46 done 47 48 # Before (systemd format): 49 # Mar 07 07:22:05 kind-control-plane kubelet[288]: {"ts":1678173725722.4487,"caller":"flag/flags.go:64","msg":"FLAG: --address=\"0.0.0.0\"\n","v":1} 50 # After: 51 # {"ts":1678173725722.4487,"caller":"flag/flags.go:64","msg":"FLAG: --address=\"0.0.0.0\"\n","v":1} 52 grep 'kind-worker kubelet' ci-kubernetes-kind-e2e-json-logging/artifacts/kind-worker/kubelet.log | \ 53 sed -e 's;^.* kind-worker kubelet[^ ]*: ;;' > ci-kubernetes-kind-e2e-json-logging/kind-worker-kubelet.log 54 55 # Create copies of the actual files, whether they already exist or not. To 56 # clean up disk space, use "git clean -fx test/integration/logs/benchmark". 57 copy () { 58 from="$1" 59 to="$2" 60 61 mkdir -p "$(dirname "$to")" 62 rm -f "$to" 63 cp "$from" "$to" 64 } 65 copy ci-kubernetes-kind-e2e-json-logging/kind-worker-kubelet.log data/kind-worker-kubelet.log 66 copy ci-kubernetes-kind-e2e-json-logging/kube-apiserver.log data/kube-apiserver.log 67 copy ci-kubernetes-kind-e2e-json-logging/kube-controller-manager.log data/kube-controller-manager.log 68 copy ci-kubernetes-kind-e2e-json-logging/kube-scheduler.log data/kube-scheduler.log 69 70 copy ci-kubernetes-kind-e2e-json-logging/kind-worker-kubelet.log data/v3/kind-worker-kubelet.log 71 copy ci-kubernetes-kind-e2e-json-logging/kube-apiserver.log data/v3/kube-apiserver.log 72 copy ci-kubernetes-kind-e2e-json-logging/kube-controller-manager.log data/v3/kube-controller-manager.log 73 copy ci-kubernetes-kind-e2e-json-logging/kube-scheduler.log data/v3/kube-scheduler.log