Merge pull request #2 from secure-diversITy/add-debug
add a debug mode for the CLI
This commit is contained in:
commit
650cf50aaa
2 changed files with 44 additions and 18 deletions
|
@ -1,12 +1,13 @@
|
|||
#!/usr/bin/env bash
|
||||
## /etc/icinga2/scripts/host-by-telegram.sh / 20170330
|
||||
## Marianne M. Spiller <github@spiller.me>
|
||||
## Last updated 20170424
|
||||
## Tested icinga2-2.6.3-1
|
||||
## Last updated 20190722
|
||||
## Tested icinga2-2.10.3
|
||||
|
||||
PROG="`basename $0`"
|
||||
HOSTNAME="`hostname`"
|
||||
TRANSPORT="curl"
|
||||
unset DEBUG
|
||||
|
||||
if [ -z "`which $TRANSPORT`" ] ; then
|
||||
echo "$TRANSPORT not in \$PATH. Consider installing it."
|
||||
|
@ -36,13 +37,14 @@ And these are optional:
|
|||
-c NOTIFICATIONCOMMENT (\$notification.comment$)
|
||||
-i HAS_ICINGAWEB2 (\$icingaweb2url$, Default: unset)
|
||||
-v (\$notification_logtosyslog$, Default: false)
|
||||
-D DEBUG enable debug output - meant for CLI debug only
|
||||
|
||||
EOF
|
||||
|
||||
exit 1;
|
||||
}
|
||||
|
||||
while getopts 4:6::b:c:d:hi:l:n:o:p:q:r:s:t:u:v: opt
|
||||
while getopts 4:6::b:c:d:hi:l:n:o:p:q:r:s:t:u:v:D opt
|
||||
do
|
||||
case "$opt" in
|
||||
4) HOSTADDRESS=$OPTARG ;;
|
||||
|
@ -61,6 +63,7 @@ do
|
|||
s) HOSTSTATE=$OPTARG ;;
|
||||
t) NOTIFICATIONTYPE=$OPTARG ;;
|
||||
v) VERBOSE=$OPTARG ;;
|
||||
D) DEBUG=1; echo -e "\n**********************************************\nWARNING: DEBUG MODE, DEACTIVATE ASAP\n**********************************************\n" ;;
|
||||
\?) echo "ERROR: Invalid option -$OPTARG" >&2
|
||||
Usage ;;
|
||||
:) echo "Missing option argument for -$OPTARG" >&2
|
||||
|
@ -108,10 +111,20 @@ if [ "$VERBOSE" == "true" ] ; then
|
|||
logger "$PROG sends $SUBJECT => Telegram Channel $TELEGRAM_BOT"
|
||||
fi
|
||||
|
||||
## debug output or not
|
||||
if [ -z $DEBUG ];then
|
||||
CURLARGS="--silent --output /dev/null"
|
||||
else
|
||||
CURLARGS=-v
|
||||
set -x
|
||||
echo -e "DEBUG MODE!"
|
||||
fi
|
||||
|
||||
## And finally, send the message
|
||||
/usr/bin/curl --silent --output /dev/null \
|
||||
--data-urlencode "chat_id=${TELEGRAM_BOTID}" \
|
||||
--data-urlencode "text=${NOTIFICATION_MESSAGE}" \
|
||||
--data-urlencode "parse_mode=HTML" \
|
||||
--data-urlencode "disable_web_page_preview=true" \
|
||||
"https://api.telegram.org/bot${TELEGRAM_BOTTOKEN}/sendMessage"
|
||||
/usr/bin/curl $CURLARGS \
|
||||
--data-urlencode "chat_id=${TELEGRAM_CHATID}" \
|
||||
--data-urlencode "text=${NOTIFICATION_MESSAGE}" \
|
||||
--data-urlencode "parse_mode=HTML" \
|
||||
--data-urlencode "disable_web_page_preview=true" \
|
||||
"https://api.telegram.org/bot${TELEGRAM_BOTTOKEN}/sendMessage"
|
||||
set +x
|
||||
|
|
|
@ -1,12 +1,13 @@
|
|||
#!/usr/bin/env bash
|
||||
## /etc/icinga2/scripts/service-by-telegram.sh / 20170330
|
||||
## Marianne M. Spiller <github@spiller.me>
|
||||
## Last updated 20170424
|
||||
## Tested icinga2-2.6.3-1
|
||||
## Last updated 20190722
|
||||
## Tested icinga2-2.10.3
|
||||
|
||||
PROG="`basename $0`"
|
||||
HOSTNAME="`hostname`"
|
||||
TRANSPORT="curl"
|
||||
unset DEBUG
|
||||
|
||||
if [ -z "`which $TRANSPORT`" ] ; then
|
||||
echo "$TRANSPORT not in \$PATH. Consider installing it."
|
||||
|
@ -38,12 +39,13 @@ And these are optional:
|
|||
-c NOTIFICATIONCOMMENT (\$notification.comment$)
|
||||
-i HAS_ICINGAWEB2 (\$icingaweb2url$, Default: unset)
|
||||
-v (\$notification_logtosyslog$, Default: false)
|
||||
-D DEBUG enable debug output - meant for CLI debug only
|
||||
|
||||
EOF
|
||||
exit 1;
|
||||
}
|
||||
|
||||
while getopts 4:6:b:c:d:e:f:hi:l:n:o:p:q:r:s:t:u:v: opt
|
||||
while getopts 4:6:b:c:d:e:f:hi:l:n:o:p:q:r:s:t:u:v:D opt
|
||||
do
|
||||
case "$opt" in
|
||||
4) HOSTADDRESS=$OPTARG ;;
|
||||
|
@ -64,6 +66,7 @@ do
|
|||
t) NOTIFICATIONTYPE=$OPTARG ;;
|
||||
u) SERVICEDISPLAYNAME=$OPTARG ;;
|
||||
v) VERBOSE=$OPTARG ;;
|
||||
D) DEBUG=1; echo -e "\n**********************************************\nWARNING: DEBUG MODE, DEACTIVATE ASAP\n**********************************************\n" ;;
|
||||
\?) echo "ERROR: Invalid option -$OPTARG" >&2
|
||||
Usage ;;
|
||||
:) echo "Missing option argument for -$OPTARG" >&2
|
||||
|
@ -110,10 +113,20 @@ if [ "$VERBOSE" == "true" ] ; then
|
|||
logger "$PROG sends $SUBJECT => Telegram Channel $TELEGRAM_BOT"
|
||||
fi
|
||||
|
||||
## debug output or not?
|
||||
if [ -z $DEBUG ];then
|
||||
CURLARGS="--silent --output /dev/null"
|
||||
else
|
||||
CURLARGS=-v
|
||||
set -x
|
||||
echo -e "DEBUG MODE!"
|
||||
fi
|
||||
|
||||
## And finally, send the message
|
||||
/usr/bin/curl --silent --output /dev/null \
|
||||
--data-urlencode "chat_id=${TELEGRAM_BOTID}" \
|
||||
--data-urlencode "text=${NOTIFICATION_MESSAGE}" \
|
||||
--data-urlencode "parse_mode=HTML" \
|
||||
--data-urlencode "disable_web_page_preview=true" \
|
||||
"https://api.telegram.org/bot${TELEGRAM_BOTTOKEN}/sendMessage"
|
||||
/usr/bin/curl $CURLARGS \
|
||||
--data-urlencode "chat_id=${TELEGRAM_CHATID}" \
|
||||
--data-urlencode "text=${NOTIFICATION_MESSAGE}" \
|
||||
--data-urlencode "parse_mode=HTML" \
|
||||
--data-urlencode "disable_web_page_preview=true" \
|
||||
"https://api.telegram.org/bot${TELEGRAM_BOTTOKEN}/sendMessage"
|
||||
set +x
|
||||
|
|
Loading…
Reference in a new issue