Note that there are some explanatory texts on larger screens.

plurals
  1. POUse monit to monitor a java program
    text
    copied!<p>I am writing to get some help regarding starting my java programs via Monit. I have written a start script program.sh. The monit code and the scipt code is given with this posting.</p> <p>The issue is that I am not able the start and stop the program using the the script file executed via monit. I can monitor the process if I start it using the terminal but I can't start/stop it with monit. The log from monit says "Failed to start"</p> <p>However, I can start and stop programs like ssh easliy from monit. The monit runs under sudo and I am running the scripts from an account with administrative privileges. It will very helpful if someone helps me figure this out Thanks</p> <p>monitrc file</p> <pre><code>#++++++++++#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #Monit settings set daemon 10 with start delay 2 # check services at 2-minute intervals set logfile syslog facility log_daemon set logfile /var/log/monit.log set idfile /var/lib/monit/id set statefile /var/lib/monit/state #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # Mail Server set mailserver smtp.gmail.com port 587 username "monit.abc123@gmail.com" password "password" using tlsv1 with timeout 30 seconds set eventqueue basedir /var/lib/monit/events # set the base directory where events will be stored slots 100 # optionally limit the queue size set alert abc123@gmail.com # receive all alerts set alert abc123@gmail.com only on { timeout } # receive just service- # # timeout alert #set alert foo@bar { nonexist, timeout, resource, icmp, connection } #set alert security@bar on { checksum, permission, uid, gid } # setup the email for the SMS thing over here....................... #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ set httpd port 2813 and # use address localhost # only accept connection from localhost allow localhost # allow localhost to connect to the server and allow 0.0.0.0/0.0.0.0 allow admin:monit # require user 'admin' with password 'monit' # allow @monit # allow users of group 'monit' to connect (rw) # allow @users readonly # allow users of group 'users' to connect readonly #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ set mail-format { from: monit@$HOST subject: Monit Alert -- $EVENT $SERVICE message: $EVENT Service $SERVICE Date: $DATE Action: $ACTION Host: $HOST Description: $DESCRIPTION Your faithful employee, Monit } #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #*********************************************************************************************** #Computer Resources check check system myhost.mydomain.tld if loadavg (1min) &gt; 4 for 5 cycles then alert if loadavg (5min) &gt; 2 for 5 cycles then alert if memory usage &gt; 75% for 3 cycles then alert if swap usage &gt; 25% for 5 cycles then alert if cpu usage (user) &gt; 70% for 5 cycles then alert if cpu usage (system) &gt; 70% for 5 cycles then alert if cpu usage (wait) &gt; 20% for 5 cycles then alert #*********************************************************************************************** ################################################################################################ #Monitoring SSH Service check process ssh123 with pidfile /var/run/sshd.pid start program = "/etc/init.d/ssh start" stop program = "/etc/init.d/ssh stop" if cpu &gt; 50% for 5 cycles then alert if totalmem &gt; 200 MB for 5 cycles then alert if children &gt; 2 then alert #if loadavg(5min) greater than 10 for 8 cycles then stop #if 5 restarts within 5 cycles then timeout ################################################################################################ #Monitoring Prorgam in Java check process javaprg with pidfile /home/user/Desktop/Binaries/javaprg.pid start program = "/home/user/Desktop/Binaries/javaprg.sh start" stop program = "/home/user/Desktop/Binaries/javaprg.sh stop" if cpu &gt; 50% for 5 cycles then alert if totalmem &gt; 1500 MB for 5 cycles then alert if children &gt; 2 then alert #if loadavg(5min) greater than 10 for 8 cycles then stop #if 5 restarts within 5 cycles then timeout </code></pre> <p>Start/Stop script</p> <pre><code>#!/bin/bash case $1 in start) echo $$ &gt; javaprg.pid; exec /usr/bin/java -jar javaprg.jar ;; stop) kill $(cat javaprg.pid); rm javaprg.pid ;; *) echo "usage: javaprg {start|stop}" ;; esac exit 0 </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload