Skip to content

Agent Configuration Reference

config.properties

With every agent deployment there is a file called config.properties which can be found in the bin folder of the agent installation. This configuration file is used to control the behaviour of the SAS Enterprise Session Monitor agent. A full list of the agent configuration properties, a description of the property, and the default value, can be found below:

Property Description Default value
monitorAllSessions Used to enable active process discovery False
monitoringInterval Used in conjunction with monitorAllSessions to specify the interval, in seconds, at which the host's process table is scanned 10
threadsIndexer The number of threads dedicated to periodic node-level directory sizing 5
processMonitorThreads The number of threads dedicated to measuring process performance 1
processIOMOnitorThreads The number of threads dedicated to measuring per-process temp directories 1
threadsCrawler unknown 5
maxiothroughput The ceiling limit for IO reads and writes per-second in bytes. This is a work around for a SIGAR underflow issue. 263-1
maxBufferSize The number of process measurements kept in the local agent cache if the server is uncontactable. 250000
maxSessionsCount The maximum number of processes that can be tracked by the agent 5000
startTimeVarianceTolerance This is a tolerance limit in milliseconds for hardware clock drift when identifying unique processes by pid and start time. 2000
maxEventFileSize The maximum size of a file, in bytes, of a file that will be read from the ESMEVENTS folder. If a file exceeds this size, the agent will delete the file without reading it and log an error in the agent log file. 10485760
dontReportAgent Disable sending of data from this agent to the configured server False
regexTimeout The number of milliseconds before a regex lookup is considered catastrophic (in L notation) 100L
ignoreExistingSessionsOnRestart Disable the retrieval of existing session list from the server False
containerIdDisable Disable cgroup-based identification of the process container True
disableProcessIOCollection Disable per-process IO metrics collection False
disableProcessMemoryCollection Disable per-process memory metrics collection False
logEventsRateLimit Limit the number of events that are generated per-log for each iteration of the agent metric collection cycle. Events exceeding this number are skipped. 100
containerIdRegex The regular expression that is used to extract the container ID from cgroups. \\d+:\\w+:(\\/docker\\/|\\/kubepods\\/.*\\/)(.*)
containerIdRegexGroup The number of the capture group, defined in containerIdRegex that contains the actual container ID to be passed to the server when registering a pod. 2
logDiscoveryDisable Disable discovery of log files that are defined in the processLogfilePattern property of the filterSpec.yaml file False
disableCopyTruncate By default, if a log file reduces in size from when it was last read, the agent assumes that the log has been rotated, and will start reading the log file from the beginning. Setting this value to True will override this functionality and the log will wait until the file is bigger than the last read size. False
useCumulativeIOCounters Use alternate SIGAR counters for measuring disk IO. You should set this to True by default on Windows. False
disableProcessStateCollection Do not collect process state information (# of threads, status, etc.). This data is not exposed on some operating systems including Solaris and generates an error. False
disableProcessFDCollection Do not collect process file descriptor information (# of threads, status, etc.). This data is not exposed on some operating systems including Solaris and generates an error. False
disableUsingPsForProcessOwner The agent primarily uses a SIGAR function to get the process owner information. As a fallback, the process table is looked up directly. Setting this value to true, disables the fallback method. If SIGAR is unable to find the username and the fallback has been disabled, the username for a process may be blank. False
totalIOThroughputOnly Do not try and collect separated read and write IO information. This data is not exposed on some operating systems including AIX and can generate an error if not set to True. False
autodiscoveredTempRemoval When a process' temporary directories (SAS work & UTIL) are automatically discovered, this sets the default behavior for what should happen to those directories when the associated PID is terminated through the SAS Enterprise Session Monitor user interface. True
serverMode When an agent is in serverMode a hard coded, internal filterSpec.yaml file is used to only discover SAS Enterprise Session Monitor server and SAS Enterprise Session Monitor database processes. When an agent is in server mode, the number of cores of the running server are not counted for licensing purposes. False
logThreads The agent uses multiple threads to scan log files. You can control the number of threads that the agent uses to read log files. 4

esmconfig.[bat|sh]

With every agent deployment there is a file called esmconfig which can be found in the conf folder of the agent installation. Depending on your platform, this file has a .bat extension on Windows or .sh extension on UNIX/Linux systems. The file defines the connectivity of the Agent to the Server and controls some of the host devices that are tracked by the system.

Property Description Default Value
ESMSERVER The hostname or IP address that the Agent connects to
ESMPORT The port used for connection between the Server and the Agent. The is defined during the installation of the Server. 18080
ESMHOME The Agent's installed location. C:\esm on Windows and $HOME of the installing user on UNIX
ESMDISKS Used to define disks that will be monitored by ESM Agent.
ESMNODENAME The name of the machine as it should appear in the Application
ESMEVENTS Location of the folder that should listen for SAS events.
ESMNETWORK Used to define network interfaces that will be monitored by ESM Agent.
ESMSECUREPORT The port used for secure connections between agent and server. 18082
ESMUSESSL Whether to use SSL for communication between agent and server. False
ESMAUTOS The location of the folder that contains SAS programs to be injected into other SAS programs to enable application functionality.
ESMDEBUG Controls the logging level of the application False
ESM_LOG_LEVEL Controls the logging level of ESM within SAS sessions INFO
ESMPRIORITY Defines the "niceness" of the Agent's process at the operating system level -19
ESMGUID A unique number generated to track and link sessions.

Last update: April 24, 2023
Created: April 24, 2023