Compare commits
8 Commits
master
...
docker-fed
| Author | SHA1 | Date | |
|---|---|---|---|
| 1391c4aecc | |||
| dc1f36861d | |||
| fbd1838f4b | |||
| e7558115d0 | |||
| 00e1099263 | |||
| 5b18571870 | |||
| 37fbbe1bc0 | |||
| f9f6cdff0f |
@ -3,13 +3,17 @@
|
|||||||
# author mikedmorto 2021 year
|
# author mikedmorto 2021 year
|
||||||
export LC_ALL=""
|
export LC_ALL=""
|
||||||
export LANG="en_US.UTF-8"
|
export LANG="en_US.UTF-8"
|
||||||
version="0.1"
|
version="0.7"
|
||||||
DOCKER="/usr/bin/docker"
|
DOCKER="/usr/bin/docker"
|
||||||
|
|
||||||
|
|
||||||
|
TMP=""
|
||||||
|
PATCH="/tmp/zabbix.docker.tmp"
|
||||||
JSON=""
|
JSON=""
|
||||||
#### PARAMETRS ####
|
#### PARAMETRS ####
|
||||||
METRIC="$1"
|
METRIC="$1"
|
||||||
ITEM="$2"
|
ITEM="$2"
|
||||||
|
ERROR=0
|
||||||
|
|
||||||
case "$METRIC" in
|
case "$METRIC" in
|
||||||
discovery)
|
discovery)
|
||||||
@ -37,13 +41,86 @@ exit 0
|
|||||||
# get container status
|
# get container status
|
||||||
docker.container_running)
|
docker.container_running)
|
||||||
|
|
||||||
RET=`${DOCKER} stats --no-stream | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {$count=0;} { if ($1 == IT) count += 1 } END {if (count > 1) print ""; else if (count == 1) print 1; else if (count == 0) print 0} '`
|
RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {count=0} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else print ""} '`
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`${DOCKER} ps | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {count=0} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else if (count > 1) print ""; else if (count == 0) print 0} '`
|
||||||
|
fi
|
||||||
echo ${RET}
|
echo ${RET}
|
||||||
|
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
|
||||||
|
#get cpu usage
|
||||||
|
docker.cpu)
|
||||||
|
|
||||||
|
RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {count=0;} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else print ""} '`
|
||||||
|
TMP=`${DOCKER} stats --no-stream | tail -n +2`
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`echo $TMP | awk -v IT="${ITEM}" ' BEGIN {count=0} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else if (count == 0) print 0; else print ""}'`
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`echo $TMP | awk -v IT="${ITEM}" '{if ($1 == IT) print $3}'`
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ${RET} | awk -v FS="%" '{print $1}'
|
||||||
|
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
|
||||||
|
|
||||||
|
#get ram usage
|
||||||
|
docker.ram)
|
||||||
|
|
||||||
|
RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {count=0;} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else print ""} '`
|
||||||
|
TMP=`${DOCKER} stats --no-stream | tail -n +2`
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`echo $TMP | awk -v IT="${ITEM}" ' BEGIN {count=0} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else if (count == 0) print 0; else print ""}'`
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`echo $TMP | awk -v IT="${ITEM}" '{if ($1 == IT) print int($4*1048576)}'`
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ${RET}
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
#get container name
|
||||||
|
docker.name)
|
||||||
|
|
||||||
|
RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {count = 0} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else print ""} '`
|
||||||
|
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" '{if ($1 == IT) print $12}'`
|
||||||
|
fi
|
||||||
|
echo ${RET}
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
#get container image
|
||||||
|
docker.image)
|
||||||
|
|
||||||
|
RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" ' BEGIN {count = 0} {if ($1 == IT) count += 1} END {if (count == 1) print 1; else print ""} '`
|
||||||
|
|
||||||
|
if [ "$RET" == "1" ]
|
||||||
|
then RET=`${DOCKER} ps -a | tail -n +2 | awk -v IT="${ITEM}" '{if ($1 == IT) print $2}'`
|
||||||
|
fi
|
||||||
|
echo ${RET}
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
;;
|
||||||
|
|
||||||
|
|
||||||
|
#get script version
|
||||||
script.version)
|
script.version)
|
||||||
|
|
||||||
echo ${version}
|
echo ${version}
|
||||||
@ -56,6 +133,10 @@ echo "please use these parametrs
|
|||||||
{
|
{
|
||||||
discovery
|
discovery
|
||||||
docker.container_running
|
docker.container_running
|
||||||
|
docker.cpu
|
||||||
|
docker.ram
|
||||||
|
docker.name
|
||||||
|
docker.image
|
||||||
script.version
|
script.version
|
||||||
}"
|
}"
|
||||||
;;
|
;;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user