Merge "k8s-cni-cache-cleanup: use ActiveEnterTimestamp"

This commit is contained in:
Zuul 2022-12-19 20:19:30 +00:00 committed by Gerrit Code Review
commit b8fb4fb211

View File

@ -130,16 +130,30 @@ function check_cache_file_age {
function kubelet_uptime {
local SECONDSPERMINUTE=60
kubelet_uptime=$(systemctl show kubelet --property WatchdogTimestamp | awk -F= '{print $2}')
[[ -n ${kubelet_uptime} ]]
if [ ${?} -ne 0 ]; then
ERROR "Failed to get kubelet uptime."
# Check if the kubelet service is active
kubelet_status=$(systemctl is-active kubelet)
if [ "${kubelet_status}" = "active" ]; then
kubelet_ts_property=$(systemctl show kubelet --property ActiveEnterTimestamp)
RC=${?}
if [ "${RC}" -eq 0 ]; then
kubelet_uptime=$( echo "${kubelet_ts_property}" | awk -F= '{print $2}' )
if [ -z "${kubelet_uptime}" ]; then
ERROR "Failed to get kubelet uptime, kubelet_uptime=${kubelet_uptime}"
minutes=0
else
uptime=$(date --date="${kubelet_uptime}" +%s)
now=$(date +%s)
minutes=$(((${now}-${uptime})/${SECONDSPERMINUTE}))
fi
else
ERROR "Failed to get kubelet uptime, RC=${RC}"
minutes=0
fi
else
# Log an error message if the kubelet service is not active
ERROR "The kubelet service is not active."
minutes=0
fi
echo ${minutes}
}