Handler

Contents / C/C++ Edition / User Guide / Agent / Handler

Handler

The following section describes all available handler. The MyARM agent implementation or the myarmdaemon are using handler to filter, monitor, manipulate or calculate derived data from measured ARM data.

Apache handler

The apache handler is used in conjunction with the mod_arm4 module of the Apache HTTP Server. It manipulates the measured ARM data in such a way that virtual hosts are treated as physical hosts within MyARM. There the virtual host server name is used in MyARM to build the system address (physical host name in ARM) for each HTTP request measurement. To enable the apache handler use the following configuration entries:

agent.handler.apache (New since "4.0.x.0")
this boolean property is used to enable (true) the apache handler.

Default is false.

agent.handler.apache.appname (New since "4.0.x.0")
specifies the ARM application name of the Apache HTTP Server as configured in the mod_arm4 configuration file.

Default is "httpd".

agent.handler.apache.tranname (New since "4.0.x.0")
specifies the ARM transaction name of the HTTP request transaction of the Apache HTTP Server as configured in the mod_arm4 configuration file.

Default is "http".

# agent uses the apache handler
agent.handler.apache = true
# apache handler searches for HTTPd application name 
agent.handler.apache.appname = HTTPd
# apache handler searches for HTTPRequest transaction name 
agent.handler.apache.appname = HTTPRequest

Event flow auto response (efar) handler

The event flow auto response handler is used to monitor transaction measurements marked with the ARM_FLAG_TRACE_REQUEST flag for event flow auto response messages. If another measurement is marked as an end of flow the event flow auto response will broadcast an auto response to any listening instrumented application by sending an UDP-broadcast message to a defined port.

Any instrumented application listening for UDP messages on this port will receive such a message and will stop the root message of the event flow. With this handler the application does not need to keep track of one-way messages but the root measurement will be stopped in a synchronous manner avoiding response time calculation with possibly not synchronized clocks.

agent.transaction.eventflow.auto_response (New since "4.0.x.0")
this boolean property is used to enable (true) the event flow auto response feature.

Default is false.

agent.transaction.eventflow.broadcast (New since "4.0.x.0")
defines the broadcast IP address and port (ipaddr:port) to use for sending and receiving of event flow auto response messages.

Default is 127.0.0.1:5599.

agent.transaction.eventflow.max_waiting_time (New since "4.0.x.0")
specifies the maximum number of milliseconds to wait for an auto response message before stopping (or dropping) the transaction measurement waiting for an auto response message.

Default is 5000.

agent.transaction.eventflow.drop_no_response (New since "4.0.x.0")
this boolean property indicates to drop (true) a transaction measurement if no auto response message was received. Otherwise it will be stopped with its asynchronous response time.
agent.transaction.eventflow.send_delay (New since "4.0.x.0")
number of microseconds to delay sending an UDP auto response message to collect multiple auto responses within one UDP packet.

Default is 100.

# boolean to enable (asynchronous) event flow auto response feature
agent.transaction.eventflow.auto_response = true
# UDP broadcast address/port to send and receive event flow
# auto response messages
agent.transaction.eventflow.broadcast = "127.0.0.1:5599"
# maximum milliseconds to wait for an event flow auto
# response message
agent.transaction.eventflow.max_waiting_time = 5000
# drop measurements if no auto response was received within 
# max waiting time
agent.transaction.eventflow.drop_no_response = false
# microseconds to delay auto response message to collect multiple
# auto response messages for one UDP packet
agent.transaction.eventflow.send_delay = 100

Monitor (mon) handler

The monitor handler is used to monitor recorded transaction measurements and to execute a notify script if predefined conditions occur. To enable the transaction monitoring feature use the following configuration property:

agent.transaction.monitor (New since "4.0.x.0")
this boolean property is used to enable (true) the transaction monitor feature.

Default is false.

For a detailed description on how to define monitor conditions for ARM transaction definitions please read the section myarmadmin transaction configuration.

Passivation (psv) handler

The passivation handler is used to disable (passivate) recorded transaction measurements on a per transaction definition base. To enable the transaction passivation feature use the following configuration property:

agent.transaction.passivation (New since "4.0.x.0")
this boolean property is used to enable (true) the transaction passivation feature.

Default is false.

For a detailed description on how to disable ARM transaction measurements please read the section myarmadmin transaction configuration.

Real time statistics (rts) handler

The rts handler is used to calculate the real time statistics (RTS) for all recorded transaction measurements. The RTS handler can be either used directly within the agent or within the myarmdaemon. To enable the RTS calculation feature use the following configuration properties:

agent.rts.enable (New since "4.0.x.0")
this boolean property is used to enable (true) the rts handler within the ARM agent.

Default is false.

daemon.rts.enable (New since "3.0.x.0")
this boolean property is used to enable (true) the rts handler within the myarmdaemon.

Default is false.

For a detailed description on how to define real time statistics please read the section myarmadmin real time statistics.