cancel
Showing results for 
Search instead for 
Did you mean: 

Reg application service returning "The program exited with return code <0>"

jagathe
Level 3

Hi All,

I configured my application in VCS and when i try to online the service, its actually online the service( I could check via service status command), but

VCS getting the error code "The program exited with return code <0>"

Here is my main.cf file parameters for the specific service

 Application dfm-ocie (
                StartProgram = "/etc/init.d/ocie start"
                StopProgram = "/etc/init.d/ocie stop"
                MonitorProcesses = { classpath,
                         "/opt/netapp/essentials/jboss/lib/jboss-logmanager.jar" }
                )

 

2014/12/12 11:57:18 VCS INFO V-16-10031-509 (vmlnx64-xyz) Application:dfm-ocie:online:Executed </etc/init.d/ocie> as user <root>. The program exited with return code <0>.
2014/12/12 11:57:19 VCS INFO V-16-2-13716 (vmlnx64-xyz) Resource(dfm-ocie): Output of the completed operation (online)
==============================================
Starting NetApp OnCommand Insight Essentials Server service. This may take couple of minutes
Successfully started NetApp OnCommand Insight Essentials Server service
==============================================

2014/12/12 11:59:20 VCS ERROR V-16-2-13066 (vmlnx64-xyz) Agent is calling clean for resource(dfm-ocie) because the resource is not up even after online completed.
2014/12/12 11:59:21 VCS INFO V-16-2-13068 (vmlnx64-xyz) Resource(dfm-ocie) - clean completed successfully.
2014/12/12 11:59:21 VCS INFO V-16-2-13071 (vmlnx64-xyz) Resource(dfm-ocie): reached OnlineRetryLimit(0).
2014/12/12 11:59:23 VCS ERROR V-16-1-54031 Resource dfm-ocie (Owner: Unspecified, Group: dfmgrpkjag) is FAULTED on sys vmlnx64-xyz

 

Is there any thing iam missing here? Also can some one explian whats the MonitorProcesses doesn?

 

-Jaga

 

1 ACCEPTED SOLUTION

Accepted Solutions

kjbss
Level 5
Partner Accredited

>>It takes around 2mins to start this service, so do i need to set this some where in the config file?

Depends.  ;)       

1.  What is the MonitorInterval for the Application Type set to?  (the default is 60)

2.  What is the OnlineWaitLimit for the Application Type set to?  (the default is 2)

IE:  If you still have these at their default values, the the Application agent will allow two MonitorIntervals to pass before it decides that the absence of any monitor criteria (like the existance of a process in the process table) will be reason to fault the resource with the "resource is not up even after online completed" message. 

So in theory, you should get around two minutes -- and you say it takes around two minutes to start, so you should override the OnlineWaitLimit for the "dfm-ocie" resource and increase it to at least 3 (I guess -- this tuning is not a precise science).   (NOTE: override-ing the OnlineWaitLimit before changing it is "optional", but I prefer to leave things at default settings as much as possible and only change what needs changing. If you do not override it, then the change would effect all other Application resources in you cluster as well.)

NOTE: Looking at the timestamps in the VCS log messages that you list above does indicate that these are set to their default values as it gives up exactly two minutes after the online procedure completed. 

 

On to your other question:  I would use the available mysql agent (if one exists) rather than creating your own or adapting the Application agent to monitor mysql (do not "re-invent the wheel", as it were...).  I think there is a mysql agent, but I am only guessing.  Look for it in SORT. 

 

View solution in original post

3 REPLIES 3

kjbss
Level 5
Partner Accredited

Do you really want the "dfm-ocie" resource to be considered ONLINE if both the "classpath" and "/opt/netapp/essentials/jboss/lib/jboss-logmanager.jar" strings can be matched exactly from the system's process table?  At least on my Solaris VCS 5 system, the "MonitorProcesses" attribute must be set to the string(s) that would match exactly (no globbing, no regex matching) to the 'arg' component of "/bin/ps -eo args".

I think it unlikely that you woud have a process that shows up exactly as "classpath" from the output of "/bin/ps -eo args".

What does the VCS Bundle Agents Guide say for your version of VCS? 

Note that if you cannot uniquely match (within the first 79 characters of the process string, for a given USER) the process that you want that is specific ONLY to the "dfm-ocie" resource, then you will need to use some other criteria to determin if your  "dfm-ocie" resource is "ONLINE" or not. 

There are much more flexible Application-like agents available that allow pattern matching, or you can do your own process table pattern matching in your own MontorProgram that you create.

 

jagathe
Level 3

Hi Kjbss,

Thanks a lot for your update.

>>Do you really want the "dfm-ocie" resource to be considered ONLINE if both the "classpath" and "/opt/netapp/essentials/jboss/lib/jboss-logmanager.jar" strings can be matched exactly from the system's process table? 

No. I dont want that both to be checked to verify the process is online. I tried with system process table and it worked :) It takes around 2mins to start this service, so do i need to set this some where in the config file?

Now i will try giving the complete path from the command ""/bin/ps -eo args".

One more question is, do we really need an agent for mysql application or shall i go ahed and add the MYsql as application instead of installing mysql agent, etc.

 

-Jaga

kjbss
Level 5
Partner Accredited

>>It takes around 2mins to start this service, so do i need to set this some where in the config file?

Depends.  ;)       

1.  What is the MonitorInterval for the Application Type set to?  (the default is 60)

2.  What is the OnlineWaitLimit for the Application Type set to?  (the default is 2)

IE:  If you still have these at their default values, the the Application agent will allow two MonitorIntervals to pass before it decides that the absence of any monitor criteria (like the existance of a process in the process table) will be reason to fault the resource with the "resource is not up even after online completed" message. 

So in theory, you should get around two minutes -- and you say it takes around two minutes to start, so you should override the OnlineWaitLimit for the "dfm-ocie" resource and increase it to at least 3 (I guess -- this tuning is not a precise science).   (NOTE: override-ing the OnlineWaitLimit before changing it is "optional", but I prefer to leave things at default settings as much as possible and only change what needs changing. If you do not override it, then the change would effect all other Application resources in you cluster as well.)

NOTE: Looking at the timestamps in the VCS log messages that you list above does indicate that these are set to their default values as it gives up exactly two minutes after the online procedure completed. 

 

On to your other question:  I would use the available mysql agent (if one exists) rather than creating your own or adapting the Application agent to monitor mysql (do not "re-invent the wheel", as it were...).  I think there is a mysql agent, but I am only guessing.  Look for it in SORT.