Révision 48ab3322
no duplicated code, area graph, only first result
| plugins/mail/postfix_stats | ||
|---|---|---|
| 25 | 25 |
SYS_LOG2=${logfile2:-/var/log/syslog.0}
|
| 26 | 26 |
PFLOGSUMM=${pflogsumm:-pflogsumm.pl}
|
| 27 | 27 |
|
| 28 |
# Fields (Array to avoid code duplication) |
|
| 29 |
declare -a FIELDS_ARR=("received" "delivered" "forwarded" "deferred" "bounced" "rejected" "held" "discarded")
|
|
| 30 |
|
|
| 28 | 31 |
# |
| 29 | 32 |
# Autoconf Section |
| 30 | 33 |
# |
| ... | ... | |
| 57 | 60 |
echo 'graph_scale no' |
| 58 | 61 |
echo 'graph_period minute' |
| 59 | 62 |
echo 'graph_total Total' |
| 60 |
echo 'received.label received' |
|
| 61 |
echo 'received.type DERIVE' |
|
| 62 |
echo 'received.min 0' |
|
| 63 |
echo 'delivered.label delivered' |
|
| 64 |
echo 'delivered.type DERIVE' |
|
| 65 |
echo 'delivered.min 0' |
|
| 66 |
echo 'forwarded.label forwarded' |
|
| 67 |
echo 'forwarded.type DERIVE' |
|
| 68 |
echo 'forwarded.min 0' |
|
| 69 |
echo 'deferred.label deferred' |
|
| 70 |
echo 'deferred.type DERIVE' |
|
| 71 |
echo 'deferred.min 0' |
|
| 72 |
echo 'bounced.label bounced' |
|
| 73 |
echo 'bounced.type DERIVE' |
|
| 74 |
echo 'bounced.min 0' |
|
| 75 |
echo 'rejected.label rejected' |
|
| 76 |
echo 'rejected.type DERIVE' |
|
| 77 |
echo 'rejected.min 0' |
|
| 78 |
echo 'held.label held' |
|
| 79 |
echo 'held.type DERIVE' |
|
| 80 |
echo 'held.min 0' |
|
| 81 |
echo 'discarded.label discarded' |
|
| 82 |
echo 'discarded.type DERIVE' |
|
| 83 |
echo 'discarded.min 0' |
|
| 84 |
exit 0; |
|
| 63 |
|
|
| 64 |
# Generate config for each field |
|
| 65 |
for i in "${FIELDS_ARR[@]}"
|
|
| 66 |
do |
|
| 67 |
echo "${i}.label ${i}"
|
|
| 68 |
echo "${i}.type DERIVE"
|
|
| 69 |
echo "${i}.min 0"
|
|
| 70 |
echo "${i}.draw AREA"
|
|
| 71 |
done |
|
| 72 |
|
|
| 73 |
exit 0 |
|
| 85 | 74 |
fi |
| 86 | 75 |
|
| 87 | 76 |
# |
| ... | ... | |
| 98 | 87 |
# Return -1 if any error occurs |
| 99 | 88 |
# |
| 100 | 89 |
parseValue() {
|
| 101 |
TMP_RETURN=$(echo "${TMP_RAW}" | grep -Ei '^[[:space:]]+[[:digit:]]+[[:space:]]+'"${1}"'.*$' | grep -oEi '[[:digit:]]+[[:space:]]+' | sed 's: ::g')
|
|
| 90 |
TMP_RETURN=$(echo "${TMP_RAW}" | grep -Ei '^[[:space:]]+[[:digit:]]+[[:space:]]+'"${1}"'.*$' | grep -oEi '[[:digit:]]+[[:space:]]+' | head -n 1 | sed 's: ::g')
|
|
| 102 | 91 |
if [[ -z "${TMP_RETURN}" ]]
|
| 103 | 92 |
then |
| 104 | 93 |
echo -1 |
| ... | ... | |
| 108 | 97 |
} |
| 109 | 98 |
|
| 110 | 99 |
# Print results |
| 111 |
printf 'received.value ' |
|
| 112 |
parseValue 'received' |
|
| 113 |
printf 'delivered.value ' |
|
| 114 |
parseValue 'delivered' |
|
| 115 |
printf 'forwarded.value ' |
|
| 116 |
parseValue 'forwarded' |
|
| 117 |
printf 'deferred.value ' |
|
| 118 |
parseValue 'deferred' |
|
| 119 |
printf 'bounced.value ' |
|
| 120 |
parseValue 'bounced' |
|
| 121 |
printf 'rejected.value ' |
|
| 122 |
parseValue 'rejected' |
|
| 123 |
printf 'held.value ' |
|
| 124 |
parseValue 'held' |
|
| 125 |
printf 'discarded.value ' |
|
| 126 |
parseValue 'discarded' |
|
| 100 |
for i in "${FIELDS_ARR[@]}"
|
|
| 101 |
do |
|
| 102 |
printf "${i}.value "
|
|
| 103 |
parseValue "${i}"
|
|
| 104 |
done |
|
Formats disponibles : Unified diff