myarmtcpd

Documentation / Standard Edition / User Guide / Agent / Daemons / myarmtcpd

myarmtcpd -- network based ARM data collection daemon

This myarmtcpd daemon waits for incoming connections from instrumented applications and receives any ARM data generated by the instrumentation.

Command line options

Usage:

myarmtcpd [options]
Options

In addition to the options listed below, the myarmtcpd command supports standard options described in appendix "Standard options" and Windows service options described in section "Agent daemon as a Windows service".

-p port, --port port
specifies the port number to wait for incoming connections. Overwriting any configuration.

Configuration

In addition to the basic daemon configuration described in Configuring daemons the myarmtcpd program can be configured using the following properties in the configuration file.

tcpd.sink.name
specifies the datasink the received ARM data is written to. (See appendix "Configuring datasink component" for more details)
tcpd.host
defines the host/interface where the daemon listens for incoming data connections.

Default host is localhost.

tcpd.port
defines the port number where incoming connections are accepted.

Default port is 5557.

tcpd.max_clients
defines the maximal number of TCP clients. Note: This number should always be less than the number of allowed open files of the process. If not the myarmtcpd terminates directly!

Default is 100.

tcpd.filestorage (New since "1.5.x.0")
boolean which indicate if the myarmtcpd should use the file storage concept (true) to first write received ARM data onto disk or not (false). If set to true it will write any received data to the basic.filestore.reader.directory. It will only read in the files within this directory if the configured datasink (tcpd.sink.name) is active and accepts ARM data. For example if the configured MySQL database is currently down. All data will be stored onto local hard disk of the myarmtcpd.

Note: If set to true this will increase hard disk I/O.

Default is false.

tcpd.flowcontrol.threshold (New since "2.0.x.1")
percentage of currently in used ARM data buffers to enable flow control with the tcp datasink. If less than tcpd.flowcontrol.threshold ARM data buffers are currently used a new incoming ARM data buffer is acknowledged directly after reception. If more than tcpd.flowcontrol.threshold ARM data buffers are in use the acknowledgement of the reception is postponed after the ARM data buffer was processed and written to the myarmtcpd configured datasink.

Default is 10%, minimum is 5%, maximum is 50%.

tcpd.pidfile
defines the file where the myarmtcpd program writes its process id to.

Default is /tmp/myarmtcpd.pid.

tcpd.user, tcpd.group
user and group identification for the running myarmtcpd. (See "Configuring daemon" for more details)
tcpd.cmd.enable
boolean which indicates if the command channel is enabled (true) or disabled (false).

Default is true.

tcpd.cmd.host
host/interface myarmtcpd is listening for incoming command connections.

Default is localhost.

tcpd.cmd.port
myarmtcpd daemon command port.

Default is 5567.

tcpd.log.*
defines the logging message options and destination for the myarmtcpd program. (See appendix "Configuring Log facility" for more details)
tcpd.resource.watchdog.*
defines the resource watch dog logging for the myarmtcpd program. (See appendix "Configuring resource watch dog" for more details)
Configuration example
# myarmtcpd daemon process user name
tcpd.user = myarm
# myarmtcpd daemon process group name
tcpd.group = myarm
# myarmtcpd daemon configuration section
tcpd.pidfile = /opt/myarm/var/tcpd.pid
# set up host myarmtcpd is listening for incoming data connections
tcpd.host  = localhost
# set up port myarmtcpd is listening for incoming data connections
tcpd.port = 5557
# maximal number of allowed data clients (connections) 
tcpd.max_clients = 100
# myarmtcpd flow control threshold # below this threshold any ARM data buffer is acknowledged 
# immediately otherwise its acknowledged when the data was written
# to its datasink.
tcpd.flowcontrol.threshold = 10
# enable myarmtcpd command channel
tcpd.cmd.enable = true
# set up host myarmtcpd listening for incoming command connections
tcpd.cmd.host  = localhost
# setup tcpd daemon command port
tcpd.cmd.port = 5567

Daemon commands

The myarmtcpd program currently supports the standard daemon commands as described in section daemon command tool and the following commands:

status
queries current status information from the myarmtcpd process. It supports following options:
clients
shows detailed information about TCP client threads.
speed
shows incoming data speed (bytes per second).
all
shows all available information.
long
shows more detailed infomation.
noheader
avoid printing a header. This is useful in observing mode.
See Also
myarmoptions, myarmconfig, myarmservcmd