I might be wrong but I see a flaw in your contrôl.
Your contrôl is based on this check :
$INCEPT being the value of your watched log_file. What happens if the process who feeds your log file crashs? Or if the application fucks up and don't have anything else to feed to your log_file?
Your log file will still be greater than 0 and your script won't detect it.
I was thinking of a similar script for work with the same check on a log file (ls -lrt | awk '{print $5}' )
but instead of checking the current value, I compare the new value to the previous one (just by redirecting old value to random file > old_value) and if it's equal to the previous value => restart.
Something like this
Might need a little tweaking or add a count so that it only restarts the process after 2 failed checks or something.
Hi,
I have a task that Im stuck on. I have an elementary script named 'myscript' that prints "the script is running" once a second. It runs for 27 seconds. I need to write a 2nd script that starts 'myscript' and takes a parameter '$1' for a number. my 2nd script then needs to pause myscript... (1 Reply)
I am working on a project, which need to constantly watch the process, and check its status, if it was dead, it should be restart automatically.
Please kindly refer me to URL which teach how to write this kind of script, or service.
Thanks. (1 Reply)
I have a process that gradually eats up memory, it's currently at 80.2% and slowing down the linux server
> ps aux | grep SNMPME
root 3129 0.0 80.2 3591752 2480700 ? Sl Feb13 5:04 /opt/nampe/lib/snmpme/SNMPME config/startup.xml
Is there a command I can execute to restart this... (3 Replies)
Hi all.
I do have a script "startApp.sh" (app result is a file /opt/extract/appextract.txt)
I have no problems with stopping app
var1=`ps -ef | grep -v grep | grep MyApp | awk '{print $2}'`
kill -9 $var1
What I want to achieve is:
I start app, app is doing some extraction, after... (11 Replies)
Hi, I have a PHP application that starts a couple of processes on the server...the problem is that if I restart apache those running apps will die.
How can I start them in a way that they are not killed when I restart/stop apache ?
$cmdstr = "nohup ".$config."/".$config."... (6 Replies)
I have posted this on the Web subforum but it seems that nobody knows to do this, maybe someone has a solution here. Thank you
I have a PHP application that starts a couple of processes on the server...the problem is that if I restart apache those running apps will die.
How can I start them... (1 Reply)
Hi all
I have networker running on a RHEL 5.7 and over time it hangs. So the solution backup team proposed is to check if the process is hung, to stop and start it.
Unfortunately for me, the rc script only allows three commands, start, stop and status (no restart option) so I managed to set... (15 Replies)
HI,
I am trying to write a scrip which would restart active process. This is what i have written till now.
$ xms show pr PRESE.*
NAME STATUS ROLE PID RSTRTS STARTED MACHINE... (8 Replies)
Hi all,
Tearing my hair out..!
I have a requirement to monitor and restart a unix process via a simple watchdog script.
I have the following 3 scripts that dont work for me..
script 1 (only produces 1 output if process is up or not)... (4 Replies)
Hi Guru's,
I just want to have an idea on how to restart a particular step when it fails?
SCENARIO
we have plenty of steps such as the following below:
Step 1
copy file from source to target location which is in a different server.
Step 2
create initial and incremental process
... (4 Replies)
Discussion started by: reignangel2003
4 Replies
LEARN ABOUT DEBIAN
io::async::pid
IO::Async::PID(3pm) User Contributed Perl Documentation IO::Async::PID(3pm)NAME
"IO::Async::PID" - event callback on exit of a child process
SYNOPSIS
use IO::Async::PID;
use POSIX qw( WEXITSTATUS );
use IO::Async::Loop;
my $loop = IO::Async::Loop->new;
my $kid = $loop->fork(
code => sub {
print "Child sleeping..
";
sleep 10;
print "Child exiting
";
return 20;
},
);
print "Child process $kid started
";
my $pid = IO::Async::PID->new(
pid => $kid,
on_exit => sub {
my ( $self, $exitcode ) = @_;
printf "Child process %d exited with status %d
",
$self->pid, WEXITSTATUS($exitcode);
},
);
$loop->add( $pid );
$loop->run;
DESCRIPTION
This subclass of IO::Async::Notifier invokes its callback when a process exits.
For most use cases, a IO::Async::Process object provides more control of setting up the process, connecting filehandles to it, sending data
to and receiving data from it.
EVENTS
The following events are invoked, either using subclass methods or CODE references in parameters:
on_exit $exitcode
Invoked when the watched process exits.
PARAMETERS
The following named parameters may be passed to "new" or "configure":
pid => INT
The process ID to watch. Must be given before the object has been added to the containing "IO::Async::Loop" object.
on_exit => CODE
CODE reference for the "on_exit" event.
Once the "on_exit" continuation has been invoked, the "IO::Async::PID" object is removed from the containing "IO::Async::Loop" object.
METHODS
$process_id = $pid->pid
Returns the underlying process ID
$pid->kill( $signal )
Sends a signal to the process
AUTHOR
Paul Evans <leonerd@leonerd.org.uk>
perl v5.14.2 2012-10-24 IO::Async::PID(3pm)