[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [hobbit] alert question
- To: <hobbit (at) hswn.dk>
- Subject: RE: [hobbit] alert question
- From: "Andy France" <Andy (at) zespri.com>
- Date: Fri, 23 May 2008 15:32:37 +1200
- References: <79CCC36428A60546B48109EFBBB7201C017B3B2D (at) corp1.FREEDOM.COM> <016d01c8bc80$b55a2a00$398f10ac (at) oad.fcpp.fujitsu.com> <961092e10805222001x437ced39x8a601416cfeba588 (at) mail.gmail.com> <018701c8bc83$23b26290$398f10ac (at) oad.fcpp.fujitsu.com>
- Thread-index: Aci8g54iResWTYizQzWfKrNeNSPdsAAANBiQ
- Thread-topic: [hobbit] alert question
Hi Ryan,
Here's what I use, in three parts:
FIRST: The mail script /opt/hobbit/bin/htmlmail
#!/opt/csw/bin/bash
#
# Script get the following environment variables pre-defined so
# that they can send a meaningful alert:
#
# BBCOLORLEVEL - The current color of the status
# BBALPHAMSG - The full text of the status log triggering
the alert
# ACKCODE - The "cookie" that can be used to
acknowledge the alert
# RCPT - The recipient, from the SCRIPT entry
# BBHOSTNAME - The name of the host that the alert is
about
# MACHIP - The IP-address of the host that has a
problem
# BBSVCNAME - The name of the service that the alert is
about
# BBSVCNUM - The numeric code for the service. From
SVCCODES definition.
# BBHOSTSVC - HOSTNAME.SERVICE that the alert is about.
# BBHOSTSVCCOMMAS - As BBHOSTSVC, but dots in the hostname
replaced with commas
# BBNUMERIC - A 22-digit number made by BBSVCNUM, MACHIP
and ACKCODE.
# RECOVERED - Is "1" if the service has recovered.
# EVENTSTART - Timestamp when the current status (color)
began
# DOWNSECS - Number of seconds the service has been
down.
# DOWNSECSMSG - When recovered, holds the text "Event
duration : N" where
# N is the DOWNSECS value.
# CFID - Line-number in the hobbit-alerts.cfg file
that caused the script to be invoked.
# Can be useful when troubleshooting alert
configuration rules
#
# Minumum hobbit-alerts.cfg entry -
# SCRIPT /opt/hobbit/bin/htmlmail support FORMAT=PLAIN
#
if [ ${RECOVERED} = 1 ]
then
export BBCOLORLEVEL="RECOVERED"
export BBCOLOR="green"
else
export BBCOLOR=$BBCOLORLEVEL
fi
# Convert plain line breaks to HTML breaks
# export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed
'/>$/!s/$/<BR>/'`"
# Convert Hobbit colour tags to embedded image tags
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&blue/<img
src="cid:blue.gif">/g'`"
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&clear/<img
src="cid:clear.gif">/g'`"
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&green/<img
src="cid:green.gif">/g'`"
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&purple/<img
src="cid:purple.gif">/g'`"
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&red/<img
src="cid:red.gif">/g'`"
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&unknown/<img
src="cid:unknown.gif">/g'`"
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's/&yellow/<img
src="cid:yellow.gif">/g'`"
# Fix link at base of message as they are removed in PLAIN
format
export BBALPHAMSG="`echo \"$BBALPHAMSG\" | sed 's|http:.*|<a
href="&">&</a>|g'`"
# Run Perl script to generate email
/opt/hobbit/bin/htmlmail.pl > /dev/null 2>&1
SECOND: The perl script to format and send the message
/opt/hobbit/bin/htmlmail.pl
#!/opt/csw/bin/perl -w
use strict;
use MIME::Lite;
my $rcpt = $ENV{'RCPT'};
my $bbhostsvc = $ENV{'BBHOSTSVC'};
my $bbcolorlevel = $ENV{'BBCOLORLEVEL'};
my $bbalphamsg = $ENV{'BBALPHAMSG'};
my $subject = $bbhostsvc . " " . $bbcolorlevel;
my $htmldata = join("",
"<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\"
LINK=\"#0000FF\" ALINK =\"#FF0000\" VLINK=\"#800080\">\n",
"<FONT FACE=\"Tahoma, Arial, Helvetica\" SIZE=\"3\">\n",
"<PRE>\n",
$bbalphamsg,
"\n",
"</PRE>\n",
"</FONT>\n",
"</BODY>"
);
my $msg = MIME::Lite->new
(
Subject => $subject,
To => $rcpt,
Type => 'multipart/related'
);
$msg->attach
(
Type => 'text/html',
Data => $htmldata,
);
if($htmldata =~ m/blue.gif/)
{$msg->attach(Type => 'image/gif', Id => 'blue.gif',
Path => '/opt/hobbit/server/www/gifs/blue.gif')}
if($htmldata =~ m/clear.gif/)
{$msg->attach(Type => 'image/gif', Id => 'clear.gif',
Path => '/opt/hobbit/server/www/gifs/clear.gif')}
if($htmldata =~ m/green.gif/)
{$msg->attach(Type => 'image/gif', Id => 'green.gif',
Path => '/opt/hobbit/server/www/gifs/green.gif')}
if($htmldata =~ m/purple.gif/)
{$msg->attach(Type => 'image/gif', Id => 'purple.gif',
Path => '/opt/hobbit/server/www/gifs/purple.gif')}
if($htmldata =~ m/red.gif/)
{$msg->attach(Type => 'image/gif', Id => 'red.gif', Path
=> '/opt/hobbit/server/www/gifs/red.gif')}
if($htmldata =~ m/yellow.gif/)
{$msg->attach(Type => 'image/gif', Id => 'yellow.gif',
Path => '/opt/hobbit/server/www/gifs/yellow.gif')}
$msg->send();
THIRD: Configure your hobbit-alerts.cfg lines like this:
SCRIPT /opt/hobbit/bin/htmlmail Someone (at) nowhere.com FORMAT=TEXT
You will obviously need to adjust all of the paths to suit your
installation! And don''t forget to check you have the MIME::Lite perl
module and whatever other dependencies it requires.
HTH,
Andy.
________________________________
From: Ryan Jay B. Lapuz [mailto:rlapuz (at) fcpp.fujitsu.com]
Sent: Friday, 23 May 2008 3:15 p.m.
To: hobbit (at) hswn.dk
Subject: Re: [hobbit] alert question
Thanks for the quick reply!
Make a custom script; can someone share me the their script and teach me
how to configure it?
Thanks in advance!
Regards.
Ryan
----- Original Message -----
From: Josh Luthman <mailto:josh (at) imaginenetworksllc.com>
To: hobbit (at) hswn.dk
Sent: Friday, May 23, 2008 11:01 AM
Subject: Re: [hobbit] alert question
Pretty sure you'll have to create a custom script and put in the
HTML code in the data section of your email. To my knowledge you can't
simply stick in text in the alert Hobbit sends.
On Thu, May 22, 2008 at 10:57 PM, Ryan Jay B. Lapuz <
rlapuz (at) fcpp.fujitsu.com> wrote:
Hi all!
Just a follow up newbie question.
How can I make hobbit to send me alerts with icon like
that alert below?
I am receiving alerts like this:
&yellow Warnings in <a
href="/hobbit-cgi/bb-hostsvc.sh?CLIENT=HOST&SECTION=msgs:/var/adm/me
ssages">/var/adm/messages</a>
Hobbit 4.2.0 w/ all-in-one patch instaled in Fedora Core
6
________________________________
Listener LISTENER_RMAN1 UP
Listener LISTENER DOWN
Listener LISTENER DOWN
#####################################################################################
This email is intended for the person to whom it is addressed
only. If you are not the intended recipient, do not read, copy
or use the contents in any way. The opinions expressed may not
necessarily reflect those of ZESPRI Group of Companies ('ZESPRI').
While every effort has been made to verify the information
contained herein, ZESPRI does not make any representations
as to the accuracy of the information or to the performance
of any data, information or the products mentioned herein.
ZESPRI will not accept liability for any losses, damage or
consequence, however, resulting directly or indirectly from
the use of this e-mail/attachments.
#####################################################################################