hi Gurus,
Need to pick your brains on this minor script project.
I would like to continuously monitor a log file with sample log messages as below, and if PSOldGen percentage is either 99% or 100% for consecutively 10 times, alert someone.
Code:
{Heap before gc invocations=46516:
PSYoungGen total 63616K, used 54426K [0xcdc00000, 0xd2c00000, 0xf8800000)
eden space 48064K, 100% used [0xcdc00000,0xd0af0000,0xd0af0000)
from space 15552K, 40% used [0xd0d20000,0xd1356b38,0xd1c50000)
to space 15040K, 0% used [0xd1d50000,0xd1d50000,0xd2c00000)
PSOldGen total 892928K, used 869520K [0x78400000, 0xaec00000, 0xcdc00000)
object space 892928K, 97% used [0x78400000,0xad5243f8,0xaec00000)
PSPermGen total 786432K, used 185250K [0x48400000, 0x78400000, 0x78400000)
object space 786432K, 23% used [0x48400000,0x538e8b10,0x78400000)
1016119.682: [GC [PSYoungGen: 54426K->6458K(58752K)] 923947K->875979K(951680K), 0.0316028 secs]
Heap after gc invocations=46516:
PSYoungGen total 58752K, used 6458K [0xcdc00000, 0xd2800000, 0xf8800000)
eden space 47808K, 0% used [0xcdc00000,0xcdc00000,0xd0ab0000)
from space 10944K, 59% used [0xd1d50000,0xd239eb68,0xd2800000)
to space 14592K, 0% used [0xd0b80000,0xd0b80000,0xd19c0000)
PSOldGen total 892928K, used 869520K [0x78400000, 0xaec00000, 0xcdc00000)
object space 892928K, 97% used [0x78400000,0xad5243f8,0xaec00000)
PSPermGen total 786432K, used 185250K [0x48400000, 0x78400000, 0x78400000)
object space 786432K, 23% used [0x48400000,0x538e8b10,0x78400000)
}
In the sample above, the percentage I'm interested in is that 97% immediately after the PSOldGen line. I can't grep for "object space" because that would give me PSPermGen, the 23% line as well. I don't care about that.
How can I read a line with the exact text "PSOldGen" and get that percentage on the very next line?
Would I be able to accomplish my objectives in one script? Or should I direct the percentage output to some other file and create another script that monitors that file?
If the script can be done purely in shell (ksh or bash), that'd be great, but other implementations like in python or perl are also cool.
Any pointers would be much appreciated. Thanks in advance.
Hi,
I ned to monitor the tomcat log file called "catalina.out" for "Out of memory" error.
the script should monitor this file and send us the mail as soon as it finds the string "Out of memory" in the file.
can ypu suggest me which is the best way to do this? (4 Replies)
#!/bin/bash
tail /oracle/app/admin/ABC/bdump/alert_ABC.log >> tempoutput&
Error=`egrep 'error|warn|critical|fail|ORA-1683' tempoutput`
echo "$Error" |mailx -s "ABC Error " ABCD@domain.lk
cat /dev/null > tempoutput
I wrote this script and put in to cronjob every 5 min.
so every 5... (4 Replies)
Hi All,
Can anyone refer to me a readymade script for the purpose of log folder size monitoring script.
Example : I have a log folder of size 10 G, and as the logs keep accumulating the folder gets full and i have to manually zip/remove the files in order to keep the server running. Something... (1 Reply)
Hi All,
This is for WPAR monitoring shell script, earlier opened thread was closed, had to open a new thread, as suggested I have used script as below, But am trying to get the output in below format, need suggestions with it. Below is the lswpar output, required output format.
... (7 Replies)
Below script perfectly works, giving below mail output. BUT, I want to make the script mail only if there are any D-Defined/T-Transition/B-Broken State WPARs and also to copy the output generated during monitoring to a temporary log file, which gets cleaned up every week. Need suggestions.
... (4 Replies)
Hi All,
Its urgent.. pls help me out.. I want to create a KSH which should generate a report with the list of users and the files larger than 5 GB created by them in a direcorty and send autogenerated e-mail to them.
my input would be users list,directory path and the file size (say 5 GB)
... (11 Replies)
Hi,
I need to get a script working to monitor a log file and throw an alert via mailx as soon as a particular error is encountered.
I do not want repeatative email notifications of same error so simply cat logfile and grepping the error would not work.
Here is what i planned but it seems... (2 Replies)
Hi,
Iam new to unix , plz help me to write below script.
I need to write a script for Monitoring log file when any error occurs it has to send a mail to specified users and it should be always pick latest error not the existing one and the script should be able to send mail all errors (more... (1 Reply)
Hi
I have written below log monitoring script to egrep multiple words and redirect the output to a text file and its working fine but I want to add some more below given functionality to it, which is very advance and im not very good in it, so please help if you can :)
I am egrepping all the... (1 Reply)
Discussion started by: scazed
1 Replies
LEARN ABOUT DEBIAN
control.ctl
CONTROL.CTL(5) File Formats Manual CONTROL.CTL(5)NAME
control.ctl - specify handling of Usenet control messages
DESCRIPTION
The file /etc/news/control.ctl is used to determine what action is taken when a control message is received. It is read by the parsecon-
trol script, which is called by all the control scripts. (For an explanation of how the control scripts are invoked, see innd(8).)
The file consists of a series of lines; blank lines and lines beginning with a number sign (``#'') are ignored. All other lines consist of
four fields separated by a colon:
message:from:newsgroups:action
The first field is the name of the message for which this line is valid. It should be either the name of the control message, or the word
``all'' to mean that it is valid for all messages.
The second field is a shell-style pattern that matches the email address of the person posting the message. (The poster's address is first
converted to lowercase.) The matching is done using the shell's case statement; see sh (1) for details.
If the control message is ``newgroup'' or ``rmgroup'' then the third field specifies the shell-style pattern that must match the group
being created or removed. If the control message is of a different type, then this field is ignored.
The fourth field specifies what action to take if this line is selected for the message. The following actions are understood:
doit The action requested by the control message should be performed. In most cases the control script will also send mail to usenet.
doifarg
If the control message has an argument, this is treated as a ``doit'' action. If no argument was given, it is treated as a ``mail''
entry. This is used in ``sendsys'' entries script so that a site can request its own newsfeeds(5) entry by posting a ``sendsys
mysite'' article. On the other hand, sendsys ``bombs'' ask that the entire newsfeeds file be sent to a forged reply-to address; by
using ``doifarg'' such messages will not be processed automatically.
doit=file
The action is performed, but a log entry is written to the specified log file, file. If file is the word ``mail'' then the record
is mailed. A null string is equivalent to /dev/null. A pathname that starts with a slash is taken as the absolute filename to use
as the log. All other pathnames are written to /var/log/news/file.log. The log is written by writelog (see newslog(8)).
drop No action is taken; the message is ignored.
log A one-line log notice is sent to standard error. Innd normally directs this to the file /var/log/news/errlog.
log=file
A log entry is written to the specified log file, file, which is interpreted as described above.
mail A mail message is sent to the news administrator.
Lines are matched in order; the last match found in the file is the one that is used. For example, with the following three lines:
newgroup:*:*:drop
newgroup:tale@*.uu.net:comp.*|misc.*|news.*|rec.*|sci.*|soc.*|talk.*:doit
newgroup:kre@munnari.oz.au:aus.*:mail
A newgroup coming from ``tale'' at a UUNET machine will be honored if it is in the mainstream Usenet hierarchy. If ``kre'' posts a new-
group message creating ``aus.foo'', then mail will be sent. All other newgroup messages are ignored.
HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews. This is revision 1.8, dated 1996/09/06.
SEE ALSO innd(8), newsfeeds(5), scanlogs(8).
CONTROL.CTL(5)