Révision 67af152b
[zpool_iostat] fix shellcheck warnings
| plugins/zfs/zpool_iostat | ||
|---|---|---|
| 5 | 5 |
exit 0 |
| 6 | 6 |
fi |
| 7 | 7 |
|
| 8 |
zlines=`/sbin/zpool iostat -v| wc -l|sed 's/ //g'` |
|
| 9 |
ztail=`echo "-"$zlines` |
|
| 8 |
zlines=$(/sbin/zpool iostat -v | wc -l | sed 's/ //g') |
|
| 10 | 9 |
ztmp=/var/run/munin/zpool_iostat |
| 11 |
zdata=`/sbin/zpool iostat -v 1 1| tail $ztail > $ztmp`
|
|
| 12 |
zlist=`cat $ztmp|gawk '/alloc/ {next}; /avail/ {next}; /raid/ {next}; /mirror/ {next}; { if ( $4 >=0 ) print $1}'`
|
|
| 13 |
zname=`cat $ztmp|gawk '/alloc/ {next}; /avail/ {next}; /raid/ {next}; /mirror/ {next}; { if ( $4 >=0 ) print $1}'|gawk '{gsub("[^a-zA-Z0-9_]", "_", $1); print}'`
|
|
| 14 |
zorder=`for o in $zname; do echo $o'_read '; echo $o'_write '; done`
|
|
| 10 |
/sbin/zpool iostat -v 1 1 | tail "-$zlines" > "$ztmp"
|
|
| 11 |
zlist=$(gawk '/alloc/ {next}; /avail/ {next}; /raid/ {next}; /mirror/ {next}; { if ( $4 >=0 ) print $1}' "$ztmp")
|
|
| 12 |
zname=$(gawk '/alloc/ {next}; /avail/ {next}; /raid/ {next}; /mirror/ {next}; { if ( $4 >=0 ) print $1}' "$ztmp" | gawk '{gsub("[^a-zA-Z0-9_]", "_", $1); print}')
|
|
| 13 |
zorder=$(for o in $zname; do echo "${o}_read "; echo "${o}_write "; done)
|
|
| 15 | 14 |
|
| 16 | 15 |
if [ "$1" = "config" ]; then |
| 17 | 16 |
echo 'graph_title zpool iostat' |
| ... | ... | |
| 20 | 19 |
echo 'graph_category fs' |
| 21 | 20 |
echo 'graph_scale no' |
| 22 | 21 |
echo 'graph_info This graph shows zpool iostat' |
| 23 |
echo 'graph_order '$zorder
|
|
| 24 |
echo $zlist | tr ' ' '\n' | while read i; do
|
|
| 25 |
case $i in
|
|
| 26 |
*) name=`echo $i | gawk '{ gsub("[^a-zA-Z0-9_]", "_", $1); print }'` ;;
|
|
| 22 |
echo "graph_order $zorder"
|
|
| 23 |
echo "$zlist" | tr ' ' '\n' | while read -r i; do
|
|
| 24 |
case "$i" in
|
|
| 25 |
*) name=$(echo "$i" | gawk '{ gsub("[^a-zA-Z0-9_]", "_", $1); print }') ;;
|
|
| 27 | 26 |
esac |
| 28 |
echo $name'_read.label '$i
|
|
| 29 |
echo $name'_read.type GAUGE'
|
|
| 30 |
echo $name'_read.graph no'
|
|
| 31 |
echo $name'_write.label '$i
|
|
| 32 |
echo $name'_write.type GAUGE'
|
|
| 33 |
echo $name'_write.negative '$name'_read'
|
|
| 27 |
echo "${name}_read.label $i"
|
|
| 28 |
echo "${name}_read.type GAUGE"
|
|
| 29 |
echo "${name}_read.graph no"
|
|
| 30 |
echo "${name}_write.label $i"
|
|
| 31 |
echo "${name}_write.type GAUGE"
|
|
| 32 |
echo "${name}_write.negative ${name}_read"
|
|
| 34 | 33 |
done |
| 35 | 34 |
exit 0 |
| 36 | 35 |
fi |
| 37 |
echo $zlist | tr ' ' '\n' | while read iz; do
|
|
| 38 |
zlabel=`echo $iz|gawk '{print $1}'`
|
|
| 39 |
case $iz in
|
|
| 40 |
*) name=`echo $iz | gawk '{ gsub("[^a-zA-Z0-9_]", "_", $1); print $1 }'` ;;
|
|
| 36 |
echo "$zlist" | tr ' ' '\n' | while read -r iz; do
|
|
| 37 |
zlabel=$(echo "$iz" | gawk '{print $1}')
|
|
| 38 |
case "$iz" in
|
|
| 39 |
*) name=$(echo "$iz" | gawk '{ gsub("[^a-zA-Z0-9_]", "_", $1); print $1 }') ;;
|
|
| 41 | 40 |
esac |
| 42 |
echo -n $name'_read.value '
|
|
| 41 |
echo -n "${name}_read.value "
|
|
| 43 | 42 |
gawk '{ if ($1 == "'"$zlabel"'") print $6; }' "$ztmp"|gawk '/M/ {print strtonum($1)*1000}; /K/ {print strtonum($1)}; /[0-9]$/ {print int($1)/1000}'
|
| 44 |
echo -n $name'_write.value '
|
|
| 43 |
echo -n "${name}_write.value "
|
|
| 45 | 44 |
gawk '{ if ($1 == "'"$zlabel"'") print $7; }' "$ztmp"|gawk '/M/ {print strtonum($1)*1000}; /K/ {print strtonum($1)}; /[0-9]$/ {print int($1)/1000}'
|
| 46 | 45 |
done |
| 47 | 46 |
|
| 48 |
rm $ztmp; touch $ztmp |
|
| 47 |
rm "$ztmp"; touch "$ztmp" |
|
Formats disponibles : Unified diff