@@ -28,11 +28,13 @@ usage() {
28
28
- Pod restart count in pods mode; default is 30
29
29
- Job failed count in jobs mode; default is 1
30
30
- Pvc storage utilization; default is 80%
31
+ - APICERT expiration days for apicert mode; default is 30
31
32
-c CRIT Critical threshold for
32
33
- Pod restart count (in pods mode); default is 150
33
34
- Unbound Persistent Volumes in unboundpvs mode; default is 5
34
35
- Job failed count in jobs mode; default is 2
35
36
- Pvc storage utilization; default is 90%
37
+ - APICERT expiration days for apicert mode; default is 15
36
38
-M EXIT_CODE Exit code when resource is missing; default is 2 (CRITICAL)
37
39
-h Show this help and exit
38
40
@@ -155,16 +157,18 @@ mode_apicert() {
155
157
if [ -z " $APISERVER " ]; then
156
158
die " Apiserver URL should be defined in this mode"
157
159
fi
160
+ WARN=${WARN:- 30}
161
+ CRIT=${CRIT:- 15}
158
162
APICERT=$( echo " $APISERVER " | awk -F " //" ' { print $2 }' | awk -F " :" ' { print $1 }' )
159
163
APIPORT=$( echo " $APISERVER " | awk -F " //" ' { print $2 }' | awk -F " :" ' { print $2 }' )
160
- set ${APIPORT:= 443}
164
+ APIPORT= ${APIPORT:= 443}
161
165
APICERTDATE=$( echo | openssl s_client -connect " $APICERT " :" $APIPORT " 2> /dev/null | openssl x509 -noout -dates | grep notAfter | sed -e ' s#notAfter=##' )
162
166
a=$( date -d " $APICERTDATE " +%s)
163
167
b=$( date +%s)
164
168
c=$(( a- b))
165
169
d=$(( c/ 3600 / 24 ))
166
170
echo " APICERT expires in $d days"
167
- if [ " $d " -gt " $WARN " ]; then
171
+ if [ " $d " -gt " $WARN " ] && [ " $d " -gt " $CRIT " ] ; then
168
172
echo " APICERT is OK"
169
173
elif [ " $d " -le " $WARN " ] && [ $d -gt " $CRIT " ]; then
170
174
echo " APICERT is in WARN"
0 commit comments