armonitor


The Java based armonitor starts the AR System server, AR System plug-in server, Distributed Server Option (DSO) server, and processes specified in the armonitor.conf (armonitor.cfg) file. The armonitor provides capability to:

  • Stop a process
  • Start a process that was stopped earlier by using the stop signal or that failed to start
  • Restart a process
  • Monitor the armonitor.conf file for changes made to individual processes

On Windows, armonitor automatically runs as a service called BMC Remedy Action Request System Server.

On UNIX, the arsystem script usually controls armonitor. For more information, see arsystem.

If a process terminates, armonitor restarts the process. But if the process terminates for more than four times in 30 seconds, armonitor does not restart that process. The following exception might occur when the AR System server ports are not free and the armonitor tries to start the AR System server:
Some of the ports on this machine are not free. Make sure all the ports required for running server as per documentation are available.

You must perform the following steps to free the ports for Microsoft Windows:

  1. Open Task Manager > Process tab.
  2. Click View > Select Column.
  3. Select the PID (Process Identifier) checkbox and Image Name in the Select Process Page column. 
    The Image Name helps in identifying the processes that points to a particular process under the AR Installation directory.
  4. Identify all the processes related to the AR System server
  5. End these processes.
  6. Restart the AR System server when the processes are not displayed in the task list.

The armonitor process maintains the following lists for the processes specified in the armonitor.conf (armonitor.cfg) file.

List

Description

STARTED_PROCESSES_LIST

Lists the processes that are currently running

FAILED_TO_START_PROCESSES_LIST

Lists the processes which fail to start successfully

STOPPED_PROCESSES_LIST

Lists the processes stopped by the user by using the stopprocess <processname> (For more information see, armonitor-conf-or-armonitor-cfg).

The enhancements described below are provided to armonitor file.

ARMonitor.properties file

The ARMonitor.properties file consists of following properties to manage the AR System processes:

ARMonitor properties

Description

com.bmc.arsys.armonitor.RMIPort

The RMI Port is used by the ARMonitor_Admin to give instructions to armonitor. The property is configured by the ARMonitor.properties file, when the process is started or restarted.

com.bmc.arsys.armonitor.filewatchenabled

Allows the armonitor process to detect the changes made to the armonitor.conf (armonitor.cfg) file without affecting other AR System processes.

Default value: False

This property can be set to true or false through the ARMonitor_Admin functions - enablefilemonitor & disablefilemonitor

com.bmc.arsys.armonitor.filewatchretrylimit

Determines the maximum number of attempts that are made to enable the file-monitor

com.bmc.arsys.armonitor.server.logintimeoutinseconds

Timeout value in seconds, for which armonitor will wait for receiving the startup signal from server.

If no signal received from server during this time, the server will not be considered as started and the server process, if running, will be stopped.

com.bmc.arsys.armonitor.server.startupretrylimit

Determines the maximum number of attempts until a server is started before terminating the process.

com.bmc.arsys.armonitor.process.startupretrylimit

Determines the maximum number of attempts until a non-server process is started before terminating the process.

ARMonitor_Admin.sh or ARMonitor_Admin.bat

The ARMonitor_Admin.sh (ARMonitor_Admin.bat) is an interface to communicate with the armonitor file using the arguments provided below. Before you use the ARMonitor_Admin.sh (ARMonitor_Admin.bat) file, ensure that the value of JAVA_HOME is set correctly.

The examples are provided for Microsoft Windows. From Windows Command Prompt, change to the AR System installation directory and enter the following commands:

Arguments

Description

isalive

Checks if the armonitor.conf (armonitor.cfg) file is running

For example:

Command:

ARMonitor_Admin.bat isalive

Output:

ARMonitor is running
stoparmonitor

Stops all the processes specified in the armonitor.conf (armonitor.cfg) file and stops armonitor process.

For example:

Command:

ARMonitor_Admin.bat stoparmonitor

Output:

Sending ARMonitor stop signal...
ARMonitor Stop signal sent!!
getstartedprocesses

Lists all processes that are currently running

For example:

Command:

ARMonitor_Admin.bat getstartedprocesses

Output:

Requesting list of started processes :
Process running on server are :
ARSERVER,Process_1,Process_2,Process_3,Process_4,]


allprocessesstatus

Lists all processes sorted according to whether the process is successfully started, whether it failed to start, or whether the user has stopped the process with ARMONITOR_ADMIN calls

For example:

Command:

ARMonitor_Admin.bat allprocessesstatus

Output:

Requesting status for all processes :
Processes status on server are : [ Started-Processes ->
ARSERVER,Process_1,Process_2,Process_3,Process_4, ]
[ Failed-To-Start Processes ->  ]
[ Stopped Processes ->  ]


stopprocess <processname>

Stops the specific process if the process is currently running

For example:

Command:

ARMonitor_Admin.bat stopprocess Process_4

Output:

Sending stop process signal for process [ Process_4 ]...
Stop signal for process [ Process_4 ] sent!!


startprocess <processname>

Starts a process if the process is not currently running

For example:

Command:

ARMonitor_Admin.bat startprocess Process_4

Output:

Sending start process signal for process [ Process_4 ]...
Start signal for process [ Process_4 ] sent!!


restartprocess <processname>

Restarts a process using the process name assigned to the process

For example:

Command:

ARMonitor_Admin.bat restartprocess Process_4

Output:

Sending restart process signal for process [ Process_4 ]...
Restart signal for process [ Process_4 ] sent!!


refreshprocess <processname>

Refreshes the process with a new process definition read from the armonitor.conf (armonitor.cfg) file

For example:

Command:

ARMonitor_Admin.bat refreshprocess Process_4

Output:

Sending refresh process signal for process [ Process_4 ]...
Refresh signal for process [ Process_4 ] sent!!

The refreshprocess command is not applicable for ARSERVER processes.

getprocesscommand <processname>

Provides the process command assigned to the process.

For example:

Command:

ARMonitor_Admin.bat getprocesscommand Process_4

Output:

Requesting execution-command for process [ Process_4 ]...
Execution-command for process [ Process_4 ] is [
"C:\Program Files\BMC Software\ARSystem\arplugin.exe"  -i
"C:\Program Files\BMC Software\ARSystem" -m ].


allprocessesdetails

Provides the process details for all the processes specified in the armonitor.conf (armonitor.cfg) file

For example:

Command:

ARMonitor_Admin.bat allprocessesdetails

Output:

Requesting all processes Name-Command mapping...
Details for All Processes processed by armonitor:
Process Name:
[ARSERVER]        Command:
"<Java path>" -jar "C:\Program
Files\BMC Software\ARSystem\arserver.jar"  -I "C:\Program
Files\BMC Software\ARSystem" -l "C:\Program Files\Common Files\AR
System\Licenses\<servername>" -m
Process Name:
[Process_1]       Command: "C:\Program
Files\BMC Software\ARSystem\arsvcdsp.exe"  -d "C:\Program
Files\BMC Software\ARSystem" -m

Process Name:
[Process_4]       Command: "C:\Program
Files\BMC Software\ARSystem\arplugin.exe"  -i "C:\Program
Files\BMC Software\ARSystem" -m

isfilemonitorenabled

Returns TRUE or FALSE based on whether the FILE_MONITOR option is enabled or disabled

For example:

Command:

ARMonitor_Admin.bat isfilemonitorenabled

Output:

Requesting File Monitor state...
File Monitor is : DISABLED


enablefilemonitor

Enables the FILE_MONITOR feature for armonitor and also updates the com.bmc.arsys.armonitor.filewatchenabled property in the ARMonitor.properties file to True.

For example:

Command:

ARMonitor_Admin.bat enablefilemonitor

Output:

Sending Enable File Monitor Signal...
File Monitor Enabled Succesfully !!


disablefilemonitor

Disables the FILE_MONITOR feature for armonitor and also updates the com.bmc.arsys.armonitor.filewatchenabled property in the ARMonitor.properties file to False.

For example:

Command:

ARMonitor_Admin.bat disablefilemonitor

Output:

Sending Disable File Monitor Signal...
File Monitor Disabled Successfully !!


Important

If you add a new parameter to an already running process, the armonitor considers this as a new process and starts the process again. This creates two instances of the same process running in armonitor which results in to an error. Ensure that you stop the running process by using stopprocess argument before editing the process.

File Monitor

Starting from AR System 9.1, a FILE_MONITOR feature was added to armonitor to monitor the armonitor.conf (armonitor.cfg) file for changes. The enablefilemonitor and disablefilemonitor arguments are used to enable or disable the FILE_MONITOR feature.

The FILE_MONITOR provides following features when you modify the armonitor.conf (armonitor.cfg) file:

  • If a new process is modified, the process is started automatically without affecting other processes running in the armonitor.conf (armonitor.cfg) file.
  • If any numeric parameters of a process are modified, the same process is restarted by the armonitor with the new parameter values.

The armonitor.cfg file has the following entries:

  • External-Windows-Service: process-type = BMC:EmailEngine, service-name="BMC Remedy Email Engine - 1"
  • External-Windows-Service: process-type = BMC:FlashBoardServer, service-name="BMC Remedy Flashboards Server -

These entries are used to start and stop the Flashboards and Email Engine services when you apply a patch that is provided as a binary payload.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*