github.phpd.cn/cilium/cilium@v1.6.12/tests/k8s/helpers.bash (about) 1 #!/usr/bin/env bash 2 3 dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) 4 source "${dir}/../helpers.bash" 5 # dir might have been overwritten by helpers.bash 6 dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) 7 8 function abort { 9 set +x 10 11 echo "------------------------------------------------------------------------" 12 echo " K8s Test Failed" 13 echo "$*" 14 echo "" 15 echo "------------------------------------------------------------------------" 16 17 cilium_id=$(docker ps -aql --filter=name=cilium-agent) 18 echo "------------------------------------------------------------------------" 19 echo " Cilium logs (last 200 lines)" 20 docker logs ${cilium_id} --tail 200 21 echo "" 22 echo "------------------------------------------------------------------------" 23 24 echo "------------------------------------------------------------------------" 25 echo " L7 Proxy logs (last 200 lines)" 26 tail -n 200 /var/lib/cilium/proxy.log 27 echo "" 28 echo "------------------------------------------------------------------------" 29 30 exit 1 31 } 32 33 function gather_k8s_logs { 34 local LOCAL_NODE_NUM=$1 35 local LOGS_DIR=$2 36 log "gathering K8s logs from node k8s-$LOCAL_NODE_NUM and storing them in directory $LOGS_DIR" 37 mkdir -p ${LOGS_DIR} 38 local CILIUM_PODS=$(kubectl get pods -n ${NAMESPACE} -l k8s-app=cilium | tail -n +2 | awk '{print $1}') 39 for pod in $CILIUM_PODS; do 40 local NODE_NAME=$(kubectl get pod -n ${NAMESPACE} $pod -o wide | tail -n +2 | awk '{print $7}') 41 kubectl logs -n ${NAMESPACE} ${pod} > ${LOGS_DIR}/${pod}-${NODE_NAME}-logs || true 42 kubectl logs -n ${NAMESPACE} ${pod} --previous > ${LOGS_DIR}/${pod}-${NODE_NAME}-logs-previous || true 43 done 44 kubectl logs -n kube-system kube-apiserver-k8s-1 > ${LOGS_DIR}/kube-apiserver-k8s-1-logs || true 45 kubectl logs -n kube-system kube-controller-manager-k8s-1 > ${LOGS_DIR}/kube-controller-manager-k8s-1-logs || true 46 journalctl -au kubelet > ${LOGS_DIR}/kubelet-k8s-${LOCAL_NODE_NUM}-logs || true 47 log "finished gathering K8s logs from node k8s-$LOCAL_NODE_NUM and storing them in directory $LOGS_DIR" 48 }