10-07-2009
Shell Script - Generate SNMP Traps
Good morning to you all
Iīm kinda of a noob to scripting, and my knowledge is still very basic: anyway, Iīve developed a small .sh script with the following purpose:
- it will check a result file, checking if it has any values, or if itīs empty
- if itīs empty it will send an email
What i wanted to do, is eliminate the email part and generate some kind of snmp trap to be used for Nagios for instance, and create an alarm.
Does anybody know how to do that? Any help is apreciated. Thkx
Here goes the code:
##############################################
cat /var/www/monitor/scripts/TestProbes/probelist.txt | while read probe
do
if [[ -s /var/www/monitor/scripts/TestProbes/Probes/"$probe".txt ]] ; then
echo "Probe has data at $(date +%Y-%m-%d) $(date +%H:%M:%S)" > /var/www/monitor/scripts/TestProbes/results.txt
else
SUBJECT="No\\ Service\\ at\\ "$probe" "
EMAIL="XXXX@XXXX.com"
EMAILMESSAGE="mail"
echo "====================================================
A "$probe" ISNīT WORKING:"> $EMAILMESSAGE
echo "$(date -d "-3 hours" +%Y-%m-%d) $(date -d "-1 hours" +%H:%M:%S)
====================================================" >>$EMAILMESSAGE
su -c "/usr/bin/mail -s $SUBJECT $EMAIL < $EMAILMESSAGE" Probe_Tester
fi
rm /var/www/monitor/scripts/TestProbes/Probes/"$probe".txt
touch /var/www/monitor/scripts/TestProbes/Probes/"$probe".txt
chmod 777 /var/www/monitor/scripts/TestProbes/Probes/"$probe".txt
done
##############################################
---------- Post updated 10-07-09 at 04:31 AM ---------- Previous update was 10-06-09 at 06:21 AM ----------
Anyone?
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi,
Just wondering if anyone knows how can I send an SNMP Trap in Unix Environment(AIX) to another machine (NT/Ux) after having activated the SNMP in the AIX.
Can this be done by using a single command line or do I have to write a script for it?
Thanks in advance for your advices.
:) (1 Reply)
Discussion started by: goliath
1 Replies
2. Solaris
Hello
I am trying to check that SNMP traps could be sent from one server to other .
I am running this command from receiving server to see it can receive it
/usr/sbin/snoop udp port 162
and on the sending end I am running this commad
cst051 UDP D=162 S=1480 LEN=120
but i am... (1 Reply)
Discussion started by: Ajwat
1 Replies
3. UNIX for Dummies Questions & Answers
Hello!
I would like to generate an xml file from the output of various commands generated from within a shell script (some will be in CDATA).
At the moment the only solution I have come up with is echoing xml tags around the commands eg.
echo "<bitism>" >> outputfile
/usr/sbin/prtconf... (1 Reply)
Discussion started by: speedieB
1 Replies
4. Linux
Can anybody please tell me how to configure linux to receive snmp traps from a windows server? I am not able to receieve snmp traps on unix machines specifically linux and solaris. I have tried starting snmptrapd service on linux but it didn't work. Is there anything special that I have to do on... (2 Replies)
Discussion started by: iamtulipin
2 Replies
5. Solaris
Hi,
I want the list of SNMP traps supported by Solaris 10. DO anyone has the list prepared.
Regards,
Rajesh (1 Reply)
Discussion started by: grrajeish
1 Replies
6. Infrastructure Monitoring
Hi all,
lately i managed to install SNMP agent on Solaris 9 & 10. The second objective is now to configure traps. However (since i'm totally new to the SUN world) i don't know a way of how to start. Can somebody help me with details? What is the first thing that you need to do to start trapping?... (3 Replies)
Discussion started by: Wizard_1979
3 Replies
7. UNIX for Dummies Questions & Answers
All,
I have a question regarding setting up a virtual interface to recieve snmp traps from network devices.
My Solaris 10 server is running the HPOV-NNMi application. The network devices in our environment (many thousands) are all pre-configured to send their snmp traps to a specific IP... (4 Replies)
Discussion started by: turk22
4 Replies
8. UNIX for Dummies Questions & Answers
Hi,
We are using Zyrion Traverse to monitor all the servers. I like to set the traps on all of the Linux servers to send the traps to that servers.
So for on the /etc/snmp/snmp.conf file, this is what I have...
### SNMP Traps ###
trap2sink x.x.x.x # Traverse server
My... (4 Replies)
Discussion started by: samnyc
4 Replies
9. Infrastructure Monitoring
Dear Champs,
I am new to unix, and need to configure linux server to send below traps to a SNMP server.
Monitoring TRAP Disk Space Low
Monitoring TRAP Memory Low
Monitoring TRAP CPU high
Monitoring TRAP Admin login/Logoff
Please help me how to send this information to my SNMP server... (2 Replies)
Discussion started by: stavar
2 Replies
10. UNIX for Beginners Questions & Answers
Hi,
I am totally a newbie to any programming languages and I just started an entry level job in an IT company. One of my recent tasks is to create a script that is able to show the log file of linux service (i.e. ntpd service)
lets say, if I run my script ./test.sh, the output should be... (3 Replies)
Discussion started by: xiaogeji
3 Replies
LEARN ABOUT MOJAVE
test::script
Test::Script(3) User Contributed Perl Documentation Test::Script(3)
NAME
Test::Script - Basic cross-platform tests for scripts
DESCRIPTION
The intent of this module is to provide a series of basic tests for 80% of the testing you will need to do for scripts in the script (or
bin as is also commonly used) paths of your Perl distribution.
Further, it aims to provide this functionality with perfect platform-compatibility, and in a way that is as unobtrusive as possible.
That is, if the program works on a platform, then Test::Script should always work on that platform as well. Anything less than 100% is
considered unacceptable.
In doing so, it is hoped that Test::Script can become a module that you can safely make a dependency of all your modules, without risking
that your module won't on some platform because of the dependency.
Where a clash exists between wanting more functionality and maintaining platform safety, this module will err on the side of platform
safety.
FUNCTIONS
script_compiles
script_compiles( 'script/foo.pl', 'Main script compiles' );
The "script_compiles" test calls the script with "perl -c script.pl", and checks that it returns without error.
The path it should be passed is a relative unix-format script name. This will be localised when running "perl -c" and if the test fails the
local name used will be shown in the diagnostic output.
Note also that the test will be run with the same perl interpreter that is running the test script (and not with the default system perl).
This will also be shown in the diagnostic output on failure.
script_runs
script_runs( 'script/foo.pl', 'Main script runs' );
The "script_runs" test executes the script with "perl script.pl" and checks that it returns success.
The path it should be passed is a relative unix-format script name. This will be localised when running "perl -c" and if the test fails the
local name used will be shown in the diagnostic output.
The test will be run with the same perl interpreter that is running the test script (and not with the default system perl). This will also
be shown in the diagnostic output on failure.
SUPPORT
All bugs should be filed via the bug tracker at
<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Script>
For other issues, or commercial enhancement and support, contact the author.
AUTHOR
Adam Kennedy <adamk@cpan.org>
SEE ALSO
prove, <http://ali.as/>
COPYRIGHT
Copyright 2006 - 2009 Adam Kennedy.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.
perl v5.18.2 2009-11-23 Test::Script(3)