@cryptotaxi247 / netdata-1 / commits / d48eb0a6b

updated opensips to prevent reusing variables

Costa Tsaousis (ktsaou) committed Nov 19, 2015 at 12:11 UTC d48eb0a6b88532d2f7cbea9fdc75ad02bfa67097
1 file changed +125 -58
charts.d/opensips.chart.sh
+125 -58
@@ -3,21 +3,29 @@
3 opensips_opts="fifo get_statistics all"
4 opensips_cmd="opensipsctl"
5 opensips_update_every=5
6 +opensips_timeout=2
7
8 opensips_get_stats() {
8 - "$opensips_cmd" $opensips_opts |\
9 + timeout $opensips_timeout "$opensips_cmd" $opensips_opts |\
10 grep "^\(core\|dialog\|net\|registrar\|shmem\|siptrace\|sl\|tm\|uri\|usrloc\):[a-zA-Z0-9_ -]\+[[:space:]]*=[[:space:]]*[0-9]\+[[:space:]]*$" |\
11 sed -e "s|-|_|g" \
12 -e "s|:|_|g" \
13 -e "s|[[:space:]]\+=[[:space:]]\+|=|g" \
14 -e "s|[[:space:]]\+$||" \
15 -e "s|^[[:space:]]\+||" \
15 - -e "s|[[:space:]]\+|_|"
16 + -e "s|[[:space:]]\+|_|" \
17 + -e "s|^|opensips_|g"
18 +
19 + local ret=$?
20 + [ $ret -ne 0 ] && echo "opensips_command_failed=1"
21 + return $ret
22 }
23
24 opensips_check() {
25 + require_cmd timeout || return 1
26 +
27 # check once if the url works
20 - local x="$(opensips_get_stats | grep "^core_")"
28 + local x="$(opensips_get_stats | grep "^opensips_core_")"
29 if [ ! $? -eq 0 -o -z "$x" ]
30 then
31 echo >&2 "opensips: cannot get global status. Please set opensips_opts='options' whatever needed to get connected to opensips server, in $confd/opensips.conf"
@@ -146,121 +154,180 @@ opensips_update() {
154 # prepare the script and always grep at the end the lines that are usefull, so that
155 # even if something goes wrong, no other code can be executed
156
157 + unset \
158 + opensips_dialog_active_dialogs \
159 + opensips_dialog_early_dialogs \
160 + opensips_usrloc_registered_users \
161 + opensips_usrloc_location_users \
162 + opensips_usrloc_location_contacts \
163 + opensips_usrloc_location_expires \
164 + opensips_registrar_accepted_regs \
165 + opensips_registrar_rejected_regs \
166 + opensips_tm_UAS_transactions \
167 + opensips_tm_UAC_transactions \
168 + opensips_core_rcv_requests \
169 + opensips_core_rcv_replies \
170 + opensips_core_fwd_requests \
171 + opensips_core_fwd_replies \
172 + opensips_core_drop_requests \
173 + opensips_core_drop_replies \
174 + opensips_core_err_requests \
175 + opensips_core_err_replies \
176 + opensips_core_bad_URIs_rcvd \
177 + opensips_core_unsupported_methods \
178 + opensips_core_bad_msg_hdr \
179 + opensips_tm_received_replies \
180 + opensips_tm_relayed_replies \
181 + opensips_tm_local_replies \
182 + opensips_tm_2xx_transactions \
183 + opensips_tm_3xx_transactions \
184 + opensips_tm_4xx_transactions \
185 + opensips_tm_5xx_transactions \
186 + opensips_tm_6xx_transactions \
187 + opensips_tm_inuse_transactions \
188 + opensips_sl_1xx_replies \
189 + opensips_sl_2xx_replies \
190 + opensips_sl_3xx_replies \
191 + opensips_sl_4xx_replies \
192 + opensips_sl_5xx_replies \
193 + opensips_sl_6xx_replies \
194 + opensips_sl_sent_replies \
195 + opensips_sl_sent_err_replies \
196 + opensips_sl_received_ACKs \
197 + opensips_dialog_processed_dialogs \
198 + opensips_dialog_expired_dialogs \
199 + opensips_dialog_failed_dialogs \
200 + opensips_net_waiting_udp \
201 + opensips_net_waiting_tcp \
202 + opensips_uri_positive_checks \
203 + opensips_uri_negative_checks \
204 + opensips_siptrace_traced_requests \
205 + opensips_siptrace_traced_replies \
206 + opensips_shmem_total_size \
207 + opensips_shmem_used_size \
208 + opensips_shmem_real_used_size \
209 + opensips_shmem_max_used_size \
210 + opensips_shmem_free_size \
211 + opensips_shmem_fragments
212 +
213 + opensips_command_failed=0
214 eval "local $(opensips_get_stats)"
150 - [ $? -ne 0 ] && continue
215 + [ $? -ne 0 ] && return 1
216 +
217 + [ $opensips_command_failed -eq 1 ] && echo >&2 "opensips: failed to get values, disabling." && return 1
218
219 # write the result of the work.
220 cat <<VALUESEOF
221
222 BEGIN opensips.dialogs_active $1
156 -SET dialog_active_dialogs = $dialog_active_dialogs
157 -SET dialog_early_dialogs = $dialog_early_dialogs
223 +SET dialog_active_dialogs = $opensips_dialog_active_dialogs
224 +SET dialog_early_dialogs = $opensips_dialog_early_dialogs
225 END
226
227 BEGIN opensips.users $1
161 -SET usrloc_registered_users = $usrloc_registered_users
162 -SET usrloc_location_users = $usrloc_location_users
163 -SET usrloc_location_contacts = $usrloc_location_contacts
164 -SET usrloc_location_expires = $usrloc_location_expires
228 +SET usrloc_registered_users = $opensips_usrloc_registered_users
229 +SET usrloc_location_users = $opensips_usrloc_location_users
230 +SET usrloc_location_contacts = $opensips_usrloc_location_contacts
231 +SET usrloc_location_expires = $opensips_usrloc_location_expires
232 END
233
234 BEGIN opensips.registrar $1
168 -SET registrar_accepted_regs = $registrar_accepted_regs
169 -SET registrar_rejected_regs = $registrar_rejected_regs
235 +SET registrar_accepted_regs = $opensips_registrar_accepted_regs
236 +SET registrar_rejected_regs = $opensips_registrar_rejected_regs
237 END
238
239 BEGIN opensips.transactions $1
173 -SET tm_UAS_transactions = $tm_UAS_transactions
174 -SET tm_UAC_transactions = $tm_UAC_transactions
240 +SET tm_UAS_transactions = $opensips_tm_UAS_transactions
241 +SET tm_UAC_transactions = $opensips_tm_UAC_transactions
242 END
243
244 BEGIN opensips.core_rcv $1
178 -SET core_rcv_requests = $core_rcv_requests
179 -SET core_rcv_replies = $core_rcv_replies
245 +SET core_rcv_requests = $opensips_core_rcv_requests
246 +SET core_rcv_replies = $opensips_core_rcv_replies
247 END
248
249 BEGIN opensips.core_fwd $1
183 -SET core_fwd_requests = $core_fwd_requests
184 -SET core_fwd_replies = $core_fwd_replies
250 +SET core_fwd_requests = $opensips_core_fwd_requests
251 +SET core_fwd_replies = $opensips_core_fwd_replies
252 END
253
254 BEGIN opensips.core_drop $1
188 -SET core_drop_requests = $core_drop_requests
189 -SET core_drop_replies = $core_drop_replies
255 +SET core_drop_requests = $opensips_core_drop_requests
256 +SET core_drop_replies = $opensips_core_drop_replies
257 END
258
259 BEGIN opensips.core_err $1
193 -SET core_err_requests = $core_err_requests
194 -SET core_err_replies = $core_err_replies
260 +SET core_err_requests = $opensips_core_err_requests
261 +SET core_err_replies = $opensips_core_err_replies
262 END
263
264 BEGIN opensips.core_bad $1
198 -SET core_bad_URIs_rcvd = $core_bad_URIs_rcvd
199 -SET core_unsupported_methods = $core_unsupported_methods
200 -SET core_bad_msg_hdr = $core_bad_msg_hdr
265 +SET core_bad_URIs_rcvd = $opensips_core_bad_URIs_rcvd
266 +SET core_unsupported_methods = $opensips_core_unsupported_methods
267 +SET core_bad_msg_hdr = $opensips_core_bad_msg_hdr
268 END
269
270 BEGIN opensips.tm_replies $1
204 -SET tm_received_replies = $tm_received_replies
205 -SET tm_relayed_replies = $tm_relayed_replies
206 -SET tm_local_replies = $tm_local_replies
271 +SET tm_received_replies = $opensips_tm_received_replies
272 +SET tm_relayed_replies = $opensips_tm_relayed_replies
273 +SET tm_local_replies = $opensips_tm_local_replies
274 END
275
276 BEGIN opensips.transactions_status $1
210 -SET tm_2xx_transactions = $tm_2xx_transactions
211 -SET tm_3xx_transactions = $tm_3xx_transactions
212 -SET tm_4xx_transactions = $tm_4xx_transactions
213 -SET tm_5xx_transactions = $tm_5xx_transactions
214 -SET tm_6xx_transactions = $tm_6xx_transactions
277 +SET tm_2xx_transactions = $opensips_tm_2xx_transactions
278 +SET tm_3xx_transactions = $opensips_tm_3xx_transactions
279 +SET tm_4xx_transactions = $opensips_tm_4xx_transactions
280 +SET tm_5xx_transactions = $opensips_tm_5xx_transactions
281 +SET tm_6xx_transactions = $opensips_tm_6xx_transactions
282 END
283
284 BEGIN opensips.transactions_inuse $1
218 -SET tm_inuse_transactions = $tm_inuse_transactions
285 +SET tm_inuse_transactions = $opensips_tm_inuse_transactions
286 END
287
288 BEGIN opensips.sl_replies $1
222 -SET sl_1xx_replies = $sl_1xx_replies
223 -SET sl_2xx_replies = $sl_2xx_replies
224 -SET sl_3xx_replies = $sl_3xx_replies
225 -SET sl_4xx_replies = $sl_4xx_replies
226 -SET sl_5xx_replies = $sl_5xx_replies
227 -SET sl_6xx_replies = $sl_6xx_replies
228 -SET sl_sent_replies = $sl_sent_replies
229 -SET sl_sent_err_replies = $sl_sent_err_replies
230 -SET sl_received_ACKs = $sl_received_ACKs
289 +SET sl_1xx_replies = $opensips_sl_1xx_replies
290 +SET sl_2xx_replies = $opensips_sl_2xx_replies
291 +SET sl_3xx_replies = $opensips_sl_3xx_replies
292 +SET sl_4xx_replies = $opensips_sl_4xx_replies
293 +SET sl_5xx_replies = $opensips_sl_5xx_replies
294 +SET sl_6xx_replies = $opensips_sl_6xx_replies
295 +SET sl_sent_replies = $opensips_sl_sent_replies
296 +SET sl_sent_err_replies = $opensips_sl_sent_err_replies
297 +SET sl_received_ACKs = $opensips_sl_received_ACKs
298 END
299
300 BEGIN opensips.dialogs $1
234 -SET dialog_processed_dialogs = $dialog_processed_dialogs
235 -SET dialog_expired_dialogs = $dialog_expired_dialogs
236 -SET dialog_failed_dialogs = $dialog_failed_dialogs
301 +SET dialog_processed_dialogs = $opensips_dialog_processed_dialogs
302 +SET dialog_expired_dialogs = $opensips_dialog_expired_dialogs
303 +SET dialog_failed_dialogs = $opensips_dialog_failed_dialogs
304 END
305
306 BEGIN opensips.net_waiting $1
240 -SET net_waiting_udp = $net_waiting_udp
241 -SET net_waiting_tcp = $net_waiting_tcp
307 +SET net_waiting_udp = $opensips_net_waiting_udp
308 +SET net_waiting_tcp = $opensips_net_waiting_tcp
309 END
310
311 BEGIN opensips.uri_checks $1
245 -SET uri_positive_checks = $uri_positive_checks
246 -SET uri_negative_checks = $uri_negative_checks
312 +SET uri_positive_checks = $opensips_uri_positive_checks
313 +SET uri_negative_checks = $opensips_uri_negative_checks
314 END
315
316 BEGIN opensips.traces $1
250 -SET siptrace_traced_requests = $siptrace_traced_requests
251 -SET siptrace_traced_replies = $siptrace_traced_replies
317 +SET siptrace_traced_requests = $opensips_siptrace_traced_requests
318 +SET siptrace_traced_replies = $opensips_siptrace_traced_replies
319 END
320
321 BEGIN opensips.shmem $1
255 -SET shmem_total_size = $shmem_total_size
256 -SET shmem_used_size = $shmem_used_size
257 -SET shmem_real_used_size = $shmem_real_used_size
258 -SET shmem_max_used_size = $shmem_max_used_size
259 -SET shmem_free_size = $shmem_free_size
322 +SET shmem_total_size = $opensips_shmem_total_size
323 +SET shmem_used_size = $opensips_shmem_used_size
324 +SET shmem_real_used_size = $opensips_shmem_real_used_size
325 +SET shmem_max_used_size = $opensips_shmem_max_used_size
326 +SET shmem_free_size = $opensips_shmem_free_size
327 END
328
329 BEGIN opensips.shmem_fragments $1
263 -SET shmem_fragments = $shmem_fragments
330 +SET shmem_fragments = $opensips_shmem_fragments
331 END
332 VALUESEOF
333