How to monitor NFA Processes with Sysedge?

book

Article ID: 222090

calendar_today

Updated On:

Products

CA Systems Performance for IM (SystemEdge)

Issue/Introduction

I want to use SystemEdge to monitor that all CA NFA processes on a Linux machine are running correctly.

 

 

Environment

Release :  SystemEDGE 5.9

Component :

Resolution

SystemEDGE cannot monitor a process if there are multiple processes of the same name running on the box unless it is able to differentiate the processes from one another.  

As an example, in the case of many java processes running on the server the only way to make this work is to use a *unique* part of the process arguments to key in on.      It has to be unique to each process or the will entry will not go active (this can be challenging at times if there are many of the same process).

Here is an example of a process monitor entry where the argument is "-Dactivemq".   You don't even need to put in the actual process name, part of the matching argument is enough for the agent to monitor it.

EXAMPLE

sysedge.cf

watch process procAlive -Dactivemq 11 0x800 60 absolute >= 0 'Java Process' '' processEntry -Dactivemq processAlive none

sysedge.mon (the entry needs to be active or it is not initialized)

processmon {
  11
  "Java Process"
  60
  absoluteValue
  procAlive
  eq
  4
  0x800
  ""
  "-Dactivemq"
  3064
  active
  "processEntry"
  "//./-Dactivemq"
  "processAlive"
  none
  up
  0 0 0 0
}

The other option here is a processgroup monitor entry.   

If you know under normal circumstances there should be 3 instances of a given process you can setup a monitor to alarm when there are less than 3 running.   

EXAMPLE

syedge.cf (2 entries)

monitor processGroupMonEntry java pgmonNumProcs 15 0x0 60 absolute < 3 '' '' processGroupMonEntry java pgmonNumProcs none

watch procgroup java 11 0x0 60 'Java Process Group Monitor' '' none

sysedge.mon

procgroupmon {
  11
  "Java Process Group Monitor"
  60
  0x0
  ""
  "java"
  ""
  ""
  active
  none
}

selfmon {
  15
  ""
  60
  absoluteValue
  1.3.6.1.4.1.546.15.10.1.6.11
  lt
  3
  active
  ""
  0x0
  0
  "processGroupMonEntry"
  "//./java"
  "pgmonNumProcs"
  none
  up untrapped
  0 0
}