Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 20 additions & 14 deletions checks/asterisk/agent/asterisk_stats
Original file line number Diff line number Diff line change
@@ -1,17 +1,23 @@
#!/bin/bash

echo "<<<asterisk_stats>>>"
echo "sip peers $(asterisk -rx 'sip show peers' | \
grep "sip peers" | \
sed -e "s:\[Monitored\::monitored:" \
-e "s:Unmonitored\::unmonitored:" \
-e "s:\]$::")"
echo "sip users $(( $(asterisk -rx 'sip show users' | wc -l) - 1 ))"
PATH=/sbin:/usr/sbin:/bin:/usr/bin

printf "<<<asterisk_stats>>>\n"
SIP_PEERS=( $(asterisk -rx 'sip show peers' | grep "sip peers" | grep -oE '[0-9]+') )
printf "sip peers %u sip peers monitored %i online, %i offline unmonitored %i online, %i offline\n" "${SIP_PEERS[0]}" "${SIP_PEERS[1]}" "${SIP_PEERS[2]}" "${SIP_PEERS[3]}" "${SIP_PEERS[4]}"

SIP_USERS=$(asterisk -rx 'sip show users' | tail -n +2 | wc -l)
printf "sip users %i\n" "$SIP_USERS"

REGS="$(asterisk -rx 'sip show registry' | wc -l)"
echo "sip registry $(asterisk -rx 'sip show registry' | \
tail -n$(($REGS - 1)) | \
head -n$(( $REGS - 2)) | \
sed -e "s:\s\+:\ :g" )"
echo "sip channels $(asterisk -rx 'sip show channels' | tail -n1)"
echo "sip channelstats $(asterisk -rx 'sip show channelstats' | tail -n1)"
echo "sip calls $(asterisk -rx 'core show calls' | grep active\ call | cut -d' ' -f1)"
SIP_REGISTRY=$(asterisk -rx 'sip show registry' | tail -n$(($REGS - 1)) | head -n$(( $REGS - 2)) | sed -e "s,[[:space:]]\+, ,g")
printf "sip registry %s\n" "$SIP_REGISTRY"

SIP_CHANNELS=$(asterisk -rx 'sip show channels' | tail -n1 | cut -d' ' -f1)
printf "sip channels %i\n" "$SIP_CHANNELS"

SIP_CHANNELSTATS=$(asterisk -rx 'sip show channelstats' | tail -n1 | cut -d' ' -f1)
printf "sip channelstats %i\n" "$SIP_CHANNELSTATS"

SIP_CALLS=$(asterisk -rx 'core show calls' | grep active\ call | cut -d' ' -f1)
printf "sip calls %i\n" "$SIP_CALLS"