Projet

Général

Profil

Révision 48ab3322

ID48ab33220e594d41e7d13a7b75f7b92f7612fd72
Parent 8e2025a9
Enfant ce23bdde

Ajouté par Cristian Deluxe il y a environ 9 ans

no duplicated code, area graph, only first result

Voir les différences:

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