agent.conf Collector Settings
Last updated on 06 September, 2024Overview
LogicMonitor Collectors have configuration files that can be used to control their behavior. The most robust of these configuration files is the agent.conf file. Data collection, Active Discovery, auto properties, event collection, and many other Collector-specific behavior settings are maintained by this configuration file.
The agent.conf file is located in the Collector’s installation directory. The default file path is:
- Linux Collectors: /usr/local/logicmonitor/agent/conf/agent.conf
- Windows Collectors: C:\Program Files (x86)\LogicMonitor\Agent\conf\agent.conf
As discussed in Editing the Collector Config Files, it is highly recommended that any changes or additions to the agent.conf file be made via the LogicMonitor UI (from the Collectors page) as there are safeguards in place to prevent errors. Manually modifying this file from the local Collector is not recommended and is performed at your own risk.
There are more than 600 settings that can be configured in the agent.conf file, providing you with very granular control of your Collector’s behavior and operations. Some settings display in the file by default; some may need to be added if you’d like to override the default values that are defined in the code. All values declared in the agent.conf file supersede values defined in the code.
Note: In the majority of cases, your Collector will run as needed out of the box as long as it is appropriately sized. As a general rule, we recommend approaching the customization of agent.conf settings with caution and, ideally, at the direction of a support representative.
Settings are listed next, organized by function.
General Collector Settings
Property | Type | Default | Description |
agentmonitorwatchdog | Boolean | TRUE | If TRUE, the Collector will watch watchdog processes and restart the watchdog service if issues arise. |
agent.autoupgrade | Boolean | TRUE | If TRUE, the watchdog service will upgrade the Collector when a Collector upgrade is initiated. |
keep.alive.check.times | Integer | 2 | The number of times (per 5 second) a Collector checks to see if the watchdog service is working. |
agent.min.usable.space | Integer | 1024 | The minimum usable space (in megabytes) for the Collector. |
agent.restart | Integer | 0 | Assigns the restart interval of the Collector (in hours). By default the Collector restarts after credential rotation (every 24 hours). To update this restart interval without credential rotation, update this setting. |
agent.status.port | Integer | 7212 | The agent status listening port (i.e. the port over which the Watchdog service communicates to the Collector service). |
asyncProcessWaiter.readSleep.enable | Boolean | TRUE | If TRUE, non-blocking IO is enabled. |
asyncProcessWaiter.readSleep.intervalInMills | Integer | 300 | Assigns the interval of checking and read operations in async process waiter (in milliseconds). As this value decreases, CPU usage may increase; as this value increases, throughput may decrease. |
collector.auto.restart.enable | Boolean | TRUE | If TRUE, the Collector will be automatically restarted if it is not working as expected. |
collector.auto.restart.min.interval.in.minutes | Integer | 60 | Assigns the minimum auto restart interval (in minutes). |
collector.convertLocaleEnglish.enable | Boolean | FALSE | If TRUE, locale number formatting will be applied. |
collector.dump.thread.times.before.restart | Integer | 2 | Indicates the number of times a Collector will attempt to dump threads if it is experiencing issues before restarting. 0 indicates no thread dump before restarting. |
collector.dump.thread.interval.in.seconds | Integer | 10 | If the collector.dump.thread.times.before.restart setting is >1, this setting controls the interval (in seconds) in which the Collector will attempt to dump threads. |
collector.dump.thread.files.count | Integer | 5 | The maximum file count of a thread dump. |
collector.heartbeat.hang.stacktrace | Boolean | TRUE | If TRUE, the check thread will print the stack trace for heartbeat task if heartbeat task hangs. |
collector.heartbeat.clear.hang.task | Boolean | TRUE | If TRUE, clears all heartbeat tasks if all heartbeats are hung. |
collector.heartbeat.hang.restart | Boolean | TRUE | If TRUE, the Collector will be restarted when all heartbeat tasks are hung. |
collector.jvm.locale | String | us-en | Allows tweaking of JVM locale. Tweaking is sometimes needed to correct date parsing in some locales. |
collector.scheduler.thread.count | Integer | 4 | The number of threads devoted to scheduling tasks on the Collector. |
collector.size | String | <size> | The size of the Collector. Automatically assigned by the installer. |
company | String | <company> | The company the Collector is associated with. Automatically assigned by the installer. |
connection.manager.size | Integer | 4 | The number of threads to use per-processor for web page tasks |
connection.manager.threshold | Integer | 500 | The threshold for the number of threads to be created for webpage tasks. |
credential | String | <credential> | The credential the Collector uses to authenticate itself to the LogicMonitor platform. This credential is automatically assigned by the installer and undergoes rotation every 24 hours. |
credential.isencrypted | Boolean | TRUE | If TRUE then credential the Collector uses to authenticate is encrypted. |
debug.disable | Boolean | FALSE | If TRUE, remote debug commands will be prevented from operating on the Collector. This may be useful for Collectors installed on systems in secure zones. |
discover.instance.wmi.timeout.seconds | Integer | 30 | Timeout (in seconds) is explicitly used in case of adding additional monitoring. This property is not added by default to the agent.conf. Customers who face the timeout issue can add this property with the desired timeout value. |
dns.nameserver | String | 8.8.8.8 | If dns.provider is set to “dnsjava”, this setting indicates the name server being used. |
dns.provider | String | system | DNS provider type. Alternate value accepted is “dnsjava”. If set to “system”, system DNS settings are used. If set to “dnsjava”, the value provided for dns.nameserver is used. |
feed.version.check.intervalInSec | Integer | 5 | Interval (in seconds) that feed version is checked for updates. 5 is the minimum value that can be assigned. |
groovy.expect.timeout.in.second | Integer | 60 | The connection timeout period (in seconds) for the Groovy Expect library. |
hotthreaddetector.enable | Boolean | FALSE | If TRUE, hot thread and memory usage detection is enabled. |
hotthreaddetector.cpuDetectionsOnExit | Integer | 0 | Indicates the consecutive number of times CPU usage needs to be exceeded (as defined by hotthreaddetector.cpuThreshold) in order to trigger Collector restart. 0 indicates no Collector restart. |
hotthreaddetector.cpuThreshold | Integer | 5 | The CPU usage threshold (as a percentage). If usage exceeds this setting’s value, the thread is identified as a ‘hot’ thread. |
hotthreaddetector.memDetectionsOnExit | Integer | 0 | Indicates the consecutive number of times JVM old gen memory usage needs to be exceeded (as defined by hotthreaddetector.cpuThreshold) in order to trigger Collector restart. 0 indicates no Collector restart. |
hotthreaddetector.memThreshold | Integer | 95 | The JVM old gen memory usage threshold (as a percentage). If usage exceeds this setting’s value, the Collector reports a collection status of BUSY. |
hotthreaddetector.interval | Integer | 30 | The interval (in seconds) between checking for hot threads. |
httpd.port | Integer | 7214 | The HTTPd listening port (i.e. the port over which custom JobMonitors communicate to the Collector service). |
id | Integer | <id> | The Collector’s ID. Automatically assigned by the installer. |
installer.version | Integer | 0 | Installer version. Cannot be modified. |
netscan.probe.queue.capacity | Integer | 5000 | The capacity of the probing task queue. |
netscan.script.timeout.inSeconds | Integer | 300 | The script timeout period (in seconds) for any scripted NetScan. The minimum value that can be assigned to this setting is 60. |
script.notfound.file.redownload.interval | Integer | 10 | The interval (in minutes) at which uploaded scripts are redownloaded if not found. |
script.check.modification.interval.in.minute | Integer | 5 | The interval (in minutes) at which the Collector checks for modified scripts on the LM platform. |
server | String | <server> | The portal the Collector is associated with (e.g. <x>.logicmonitor.com). Automatically assigned by the installer. |
service.connect_timeout | Integer | 5 | The timeout period (in seconds) for connecting to the platform server. |
service.read_timeout | Integer | 30 | The timeout period (in seconds) for sending/reading feeds to/from the platform server. |
service.verify_cert_by_host_header | Boolean | FALSE | If TRUE, verify certificate using host in header instead of host in URL. |
service.trustall | Boolean | TRUE | If TRUE, the Collector will not verify the certificate when connecting to the platform. |
shutdown.checkingPort | Integer | 0 | Indicates the port, if any, that must be closed before the watchdog attempts to restart the Collector. This is helpful if antivirus software is holding Collector ports (SNMP trap, syslog, and so on) open after the Collector has closed them, causing the watchdog to fail to restart the Collector. |
ssh.preferredauthentications | String | publickey,keyboard-interactive,password | Indicates the preferred methods for SSH authentication. Authentication methods are selected in order; publickey is attempted first, if that fails keyboard-interactive is attempted next, and so on. |
startup.delay | Integer | 0 | Collector initialization delay in seconds. |
startup.timeout | Integer | 180 | The timeout period (in seconds) for Collector startup. |
upgrader.delay.exit | Integer | 0 | The amount of time to delay on exit (in seconds) after upgrade. |
upgrade.download.timeout | Integer | 30 | Upgrade download timeout (in seconds). |
upgrader.wait | Integer | 10 | Upgrade wait (in seconds). |
Data Collection Method Settings
Data collection settings are organized by the following data collection methods:
Global Data Collection Settings
Property | Type | Default | Description |
collecting.history.maxItem | Integer | 3 | The maximum number of collection tasks to keep in-memory history. This information is visible with !tlist and !detail debug commands. |
collector.data.collection.retry.count.max | Integer | 1 | The number of times to retry a WMI, script, or batchscript task if not executed due to sbproxy not being ready or cache is invalid. |
collector.data.collection.retry.interval.in.seconds.min | Integer | 60 | Minimum interval delay (in seconds) for retrying a collection task. |
Collector.data.collection.retry.interval.in.seconds.max | Integer | 600 | Maximum interval delay (in seconds) for retrying a collection task. |
collector.defines | String | ping,script,snmp,webpage,jdbc,perfmon,wmi,netapp,jmx,datapump,memcached,dns,esx,xen,udp,tcp,mongo,cim,awscloudwatch,awsdynamodb,awsbilling,awss3,awssqs,batchscript | Defines the collection methods that are supported by the Collector. |
poll.now.diagnose.command.timeout.in.seconds | Integer | 50 | The timeout period (in seconds) for Poll now Diagnose command. |
poll.now.queue.size | Integer | 50 | The queue size of poll now to process requests simultaneously. |
poll.now.test.script.timeout | Integer | 50 | The timeout period (in seconds) for test script. |
poll.now.threadpool | Integer | 2 | The poll now thread pool size. |
ratelimit.enable | Boolean | FALSE | If TRUE, requests sent to a host that is up (e.g. via ping), but not responding to a protocol request (e.g. SNMP or WMI), will have rate limiting applied (using other ratelimit.<x>.<x> settings) to limit the number of requests on the failing protocol. This can help ensure that the host doesn’t tie up too many collection threads, impacting data collection on other hosts. |
ratelimit.detect.period | Integer | 1 | The interval (in minutes) in which protocol detection requests will be sent to the host. This setting is active when ratelimit.enable is set to TRUE. |
ratelimit.deactive.time | Integer | 10 | The amount of time (in minutes) in which the host will be marked as inactive if it repeatedly fails to respond to the protocol request. This setting is active when ratelimit.enable is set to TRUE. |
script.stopThread.useThreadStop | Boolean | FALSE | If TRUE, the JAVA thread.stop method will be used to force stop the script. This method is deprecated and may cause issues as a result of an inconsistent state. If FALSE, thread.interrupt is called, which may not stop some threads. |
AWS Data Collection Settings
Property | Type | Default | Description |
collector.aws.timeoutSeconds | Integer | 5 | AWS timeout (in seconds). |
BatchScript Data Collection Settings
Property | Type | Default | Description |
collector.batchscript.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.batchscript.threadpool | Integer | 20 | Batchscript threadpool size. |
collector.batchscript.timeout | Integer | 120 | The timeout period (in seconds) for handling a batchscript data collection task. |
collector.batchscript.improve.enable | Boolean | TRUE | If TRUE, the Batchscript data collection method will be improved after refactoring it. |
collector.batchscript.max.expiration.in.seconds | Integer | 3600 | Collector Batchscript max timeout (in seconds). |
CIM Data Collection Settings
Property | Type | Default | Description |
collector.cim.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines or eventcollector.defines setting). |
collector.cim.threadpool | Integer | 20 | The thread count in the pool. |
collector.cim.timeout | Integer | 30 | The timeout period (in seconds) for handling a CIM data collection task. |
cim.ssl.protocol | String | SSL | SSL protocol for CIM data collection method. |
groovy.script.runner | String | sse | Sets the groovy script runner; “agent” is also supported here. |
Data Pump Data Collection Settings
Property | Type | Default | Description |
collector.datapump.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.datapump.threadpool | Integer | 1 | The thread count in the pool. |
collector.datapump.timeout | Integer | 5 | The timeout period (in seconds) for handling a Data Pump data collection task. |
DNS Data Collection Settings
Property | Type | Default | Description |
collector.dns.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.dns.threadpool | Integer | 1 | The thread count in the pool. |
collector.dns.timeout | Integer | 1 | The timeout period (in seconds) for handling a DNS data collection task. |
ESX Data Collection Settings
Property | Type | Default | Description |
collector.esx.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.esx.threadpool | Integer | 50 | The thread count in the pool. |
collector.esx.timeout | Integer | 30 | The timeout period (in seconds) for handling an ESX data collection task. |
collector.esx.connect.timeout.in.seconds | Integer | 10 | The connect timeout period (in seconds) for ESX data collection. |
collector.esx.read.timeout.in.seconds | Integer | 30 | The read timeout period (in seconds) for ESX data collection. |
collector.esx.report.connectFailure.times | Integer | 3 | Reports NaN when connection failure occurs for the number of times indicated here. |
collector.esx.customizedCommunicationInstance | Boolean | TRUE | If TRUE, the cipher algorithms indicated by collector.esx.disabled.cipherlist will be filtered out. |
collector.esx.disabled.cipherlist | String | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256 | This setting is only considered when collector.esx.customizedCommunicationInstance is TRUE. |
See AutoProperties Settings for an additional setting that relates to ESX data collection. |
JDBC Data Collection Settings
Property | Type | Default | Description |
collector.jdbc.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.jdbc.threadpool | Integer | 50 | The thread count in the pool. |
collector.jdbc.timeout | Integer | 10 | The timeout period (in seconds) for handling a JDBC data collection task. |
mysql.jdbc.driver | String | org.mariadb.jdbc.Driver | Sets the MySQL JDBC driver. Ensure that the related jar is added in wrapper.conf before changing this setting. |
startup.jdbc.delay | Integer | 0 | Startup delay (in seconds) for JDBC. |
See AutoProperties Settings for additional settings that relate to JDBC data collection. |
JMX Data Collection Settings
Property | Type | Default | Description |
collector.jmx.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.jmx.threadpool | Integer | 200 | The thread counts in the pool. |
collector.jmx.timeout | Integer | 5 | The timeout period (in seconds) for handling a JMX data collection task. |
collector.jmx.batch.enable | Boolean | TRUE | If TRUE, data collected via JMX is batched. |
collector.jmx.onebyone.in.batch.enable | Boolean | TRUE | If TRUE, data attributes are collected via JMX one by one. |
collector.jmx.cache.connection.state.enable | Boolean | TRUE | If TRUE, the JMX connection state is cached. |
collector.jmx.cache.connection | Boolean | TRUE | If TRUE, JMX cache connection is enabled. |
collector.jmx.cache.connection.max | Integer | 100 | The maximum connections per URL with username and password. If the value is < 1, the connection count is not limited. |
collector.jmx.cache.connection.url.max | Integer | 10000 | The maximum cached JMX connection URL (username + password). |
collector.jmx.cache.connection.wait.timeout.in.second | Integer | 5 | The timeout period (in seconds) to wait for a free cache JMX connection. |
collector.jmx.connection.check.period.in.millisecond | Integer | 0 | Check JMX connection period (in milliseconds). If value is 0, no threads will be created to check JMX connection. |
collector.jmx.read.timeout.in.seconds | Integer | 30 | The JMX read timeout period (in seconds) for RMI and JMXMP (remote JMX is not supported by this setting). |
collector.jmx.retry.interval.min.in.second | Integer | 5 | Minimum interval (in seconds) before retrying to establish connection. |
collector.jmx.retry.interval.max.in.second | Integer | 120 | Maximum interval (in seconds) before retrying to establish connection. |
Memcached Data Collection Settings
Property | Type | Default | Description |
collector.memcached.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.memcached.threadpool | Integer | 1 | The thread count in the pool. |
collector.memcached.timeout | Integer | 30 | The timeout period (in seconds) for handling a Memcached data collection task. |
Mongo Data Collection Settings
Property | Type | Default | Description |
collector.mongo.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.mongo.threadpool | Integer | 1 | The thread count in the pool. |
collector.mongo.timeout | Integer | 30 | The timeout period (in seconds) for handling a MongoDB data collection task. |
NetApp Data Collection Settings
Property | Type | Default | Description |
collector.netapp.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.netapp.threadpool | Integer | 5 | The thread count in the pool. |
collector.netapp.timeout | Integer | 15 | The timeout period (in seconds) for handling a NetApp data collection task. |
netapp.cacheExpiry | Integer | 30 | The amount of time (in seconds) NetApp perf-object-get-instances are cached. If 0, no caching takes place. |
netapp.connection.concurrency | Integer | 10 | The number of concurrent NetApp connections allowed for a single host. A value of 0 = no limitations. |
netapp.connection.threadPoolSize | Integer | 0 | Total number of threads to use for NetApp connections. If value is set to 0, this setting uses the value in place for collector.netapp.threadpool. |
Perfmon Data Collection Settings
Property | Type | Default | Description |
collector.perfmon.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.perfmon.threadpool | Integer | 5 | The thread count in the pool. |
collector.perfmon.timeout | Integer | 120 | The timeout period (in seconds) for handling a Perfmon data collection task. |
singlethreadpdh | Boolean | FALSE | If TRUE, only single-thread access is allowed for PDH transport technology. |
See Active Discovery Settings and SBProxy Settings for additional settings that relate to Perfmon data collection. |
Ping Data Collection Settings
Property | Type | Default | Description |
collector.ping.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.ping.threadpool | Integer | 20 | The thread count in the pool. |
collector.ping.timeout | Integer | 50 | The timeout period (in seconds) for handling a ping data collection task. |
collector.ping.asynchronous | Boolean | TRUE | If TRUE, the ping task is asynchronous, using the Collector’s FSMPingTask. If FALSE, the ping task is not asynchronous, using the Collector’s PingPoolTask. |
collector.ping.request.timeout.delta | Integer | 2 | The real timeout delta (in seconds) between the collector.ping.timeout and real request timeout. Used to report timeout before FSM timeout. |
pingpool.usejava | Boolean | FALSE | If TRUE, will use java ping. A proxy ping is used by default, but if issues are encountered with sbproxy, java ping can be used instead. |
See SBProxy Settings for an additional setting that relates to ping data collection. |
Script Data Collection Settings
Property | Type | Default | Description |
collector.script.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.script.threadpool | Integer | Varies based on Collector size. See Collector Capacity. | The maximum thread count to run script tasks. |
collector.script.timeout | Integer | 120 | The timeout period (in seconds) for handling any script data collection task. |
collector.script.asynchronous | Boolean | FALSE | If TRUE, the PowerShell script will run in SPSE. |
See Active Discovery Settings for an additional setting that relates to script data collection. |
SDK Script Data Collection Settings
Property | Type | Default | Description |
collector.sdkscript.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.sdkscript.threadpool | Integer | 10 | The thread count in the pool. |
collector.sdkscript.timeout | Integer | 120 | The timeout period (in seconds) for handling an SDK Script data collection task. |
sdkscript.extradependence.<n> | String | See details | Extra JAR dependencies for the SDKScript data collection method. By default, 3 JAR dependencies are defined and loaded into SDK scripts. JARs should be located in $AGENTROOT/lib. sdkscript.extradependence.1=logicmonitor-common.jar sdkscript.extradependence.2=logicmonitor-util.jar sdkscript.extradependence.3=sse.jar |
SNMP Data Collection Settings
Property | Type | Default | Description |
collector.snmp.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.snmp.threadpool | Integer | 50 | The thread count in the pool. |
collector.snmp.timeout | Integer | 5 | The timeout period (in seconds) for handling an SNMP data collection task. |
collector.snmp.asynchronous | Boolean | TRUE | If TRUE, SNMP data collection will run as an FSM SNMP task. |
snmp.get.batch.enable | Boolean | TRUE | If TRUE, all OIDs are sent in one SNMP get request for highest performance. If FALSE, SNMP get OID requests are sent individually; this results in lower performance. |
snmp.get.batch.autoDegrade.enable | Boolean | TRUE | If TRUE, failures in SNMP get OID requests are automatically detected and the get method is downgraded to individual OID requests. This setting is only considered if snmp.get.batch.enable is TRUE. |
snmp.extensibility.enable | Boolean | TRUE | If TRUE, SNMP4J extensibility is enabled, providing parsing support for SNMP integers with lengths > 4 bytes. |
snmp.ignore.lexicographic.order | Boolean | FALSE | If TRUE, SNMPwalk can return OIDs that are out of order, potentially causing an indefinite loop. |
snmp.pdu.timeout | Integer | 5 | SNMP PDU request timeout period (in seconds). As a general rule, this value should not be increased as too large of a timeout period may cause the SNMP retry framework to stop working correctly. Only increase this value if the remote device requires more time to respond. |
snmp.perHost.perSession.enable | Boolean | TRUE | If TRUE, an SNMP session is created for each SNMP v3 host. Enablement may lead to many SNMP threads depending upon the number of v3 hosts, CPU, and load. |
snmp.shareThreads.processThread.count | Integer | 10 | The maximum number of threads provisioned for processing/receiving responses over SNMP when sharing (via snmp.shareThreads.impl.v3.enable) is enabled. |
snmp.shareThreads.sendThread.count | Integer | 10 | The maximum number of threads provisioned for sending responses over SNMP when sharing (via snmp.shareThreads.impl.v3.enable) is enabled. |
snmp.shareThreads.impl.v3.enable | Boolean | TRUE | If TRUE, internal threads for SNMPv3 implementations are shared. A shared group of threads and queue is used to send out packets rather than scheduling of periodic tasks. |
snmp.shareThreads.impl.v3.initialCheckDelay.minutes | Integer | 15 | The initial delay (in minutes) before triggering a task to check for a blocked port. |
snmp.shareThreads.impl.v3.checkInterval.minutes | Integer | 5 | The interval (in minutes) in which a task checks for a blocked port. |
snmp.shareThreads.impl.v3.switchport.enable | Boolean | FALSE | If TRUE, the discovery of a blocked port will trigger auto-switching to another port. |
snmp.timerThread.count | Integer | 4 | The number of timer threads when sharing threads. |
snmp.udp.ratelimit | Integer | 2000 | The rate limit for request (per second) that one SNMP session will handle. |
snmp.walk.batch.enable | Boolean | TRUE | If TRUE, SNMP GETBULK is used to implement SMNPwalk. If FALSE, GETNEXT is used. |
snmp.walk.batch.autoDegrade.enable | Boolean | TRUE | If TRUE, the failure of SNMP GETBULK is auto-detected and GETNEXT is used to implement SMNPwalk. |
See Active Discovery Settings and AutoProperties Settings for additional settings that relate to SNMP data collection. |
TCP Data Collection Settings
Property | Type | Default | Description |
collector.tcp.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.tcp.threadpool | Integer | 5 | The thread count in the pool. |
collector.tcp.timeout | Integer | 60 | The timeout period (in seconds) for handling a TCP data collection task. |
UDP Data Collection Settings
Property | Type | Default | Description |
collector.udp.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.udp.threadpool | Integer | 5 | The thread count in the pool. |
collector.udp.timeout | Integer | 60 | The timeout period (in seconds) for handling a UDP data collection task. |
Webpage Data Collection Settings
Property | Type | Default | Description |
collector.webpage.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.webpage.threadpool | Integer | 10 | The thread count in the pool. |
collector.webpage.timeout | Integer | 30 | The timeout period (in seconds) for handling a web page data collection task. |
collector.webpage.asynchronous | Boolean | TRUE | If TRUE, this collection method will run as an asynchronous process. |
httpapi.tls.version | String | TLSv1.2 | TLS version of HTTP connection for groovy. |
http.async.connection.request.timeout | Integer | 5 | The timeout period (in seconds) for requesting a connection from the connection manager. |
http.async.default.connectTimeout | Integer | 5 | The timeout period (in seconds) for establishing a connection. |
http.async.default.readTimeout | Integer | 5 | The timeout period (in seconds) for inactivity between two consecutive data packets. |
webpage.circular.redirect | Boolean | FALSE | Allows circular redirect following by the WEBPAGE Collector. |
webpage.support.rc4.ciphers | Boolean | TRUE | If TRUE, the RC4 cipher algorithm is supported for HTTP clients. |
WMI Data Collection Settings
Property | Type | Default | Description |
collector.wmi.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.wmi.threadpool | Integer | 50 | The thread count in the pool.(depending on collector size) |
collector.wmi.timeout | Integer | 120 | The timeout period (in seconds) for handling a WMI data collection task. |
collector.wmi.asynchronous | Boolean | TRUE | If TRUE, this collection method will run as an asynchronous process. |
collector.wmi.property.trim.enable | Boolean | FALSE | If TRUE, white space is trimmed from the WMI query result. |
collector.wmi.request.timeout.delta | Integer | 3 | The real timeout delta (in seconds) between the collector.wmi.timeout and real request timeout. Used to report timeout before FSM timeout. |
discover.instance.wmi.timeout.seconds | Integer | 30 | WMI query timeout length that is used when finding Processes/Services for monitoring from the Additional Monitoring dialog in the portal |
See Active Discovery Settings, AutoProperties Settings, and SBProxy Settings for additional settings that relate to WMI data collection. |
Xen Data Collection Settings
Property | Type | Default | Description |
collector.xen.enable | Boolean | TRUE | If TRUE, this collection method is enabled on the Collector (assuming it is also specified in the collector.defines setting). |
collector.xen.connect.timeout.in.seconds | Integer | 10 | Timeout (in seconds) for XenServer connection. |
collector.xen.read.timeout.in.seconds | Integer | 30 | Timeout (in seconds) for XenServer read response. |
collector.xen.threadpool | Integer | 20 | The thread count in the pool. |
collector.xen.timeout | Integer | 600 | The timeout period (in seconds) for handling a XenServer data collection task. |
xen.pool.concurrency | Integer | 10 | The number of concurrent connections to the XenServer pool master. |
xen.pool.cachesize | Integer | 10000 | The maximum number of entries allowed to be stored in the metrics cache for a XenServer pool. |
See AutoProperties Settings for additional settings that relate to XenServer data collection. |
Event Collection Method Settings
Event collection settings are organized by the following collection methods:
Global Event Collection Settings
Property | Type | Default | Description |
eventcollector.defines | String | echo,wineventlog,snmptrap,syslog,logfile,scriptevent,httpevent | Defines the event collection methods that are supported by the Collector. |
HTTP Event Collection Settings
Property | Type | Default | Description |
eventcollector.httpevent.enable | Boolean | TRUE | If TRUE, this event collection method is enabled on the Collector (assuming it is also specified in the eventcollector.defines setting). |
eventcollector.httpevent.threadpool | Integer | 10 | The thread count in the pool. |
Log File Event Collection Settings
Property | Type | Default | Description |
eventcollector.logfile.enable | Boolean | TRUE | If TRUE, this event collection method is enabled on the Collector (assuming it is also specified in the eventcollector.defines setting). |
eventcollector.logfile.threadpool | Integer | 10 | The thread count in the pool. |
eventcollector.logfile.autoDetectEncodingBytesThreshold | Integer | 4096 | The maximum length of bytes when detecting encoding. |
eventcollector.logfile.autoDetectEncodingConfidenceThreshold | Integer | 90 | The threshold for confidence that file encoding was successfully auto detected. When the detection confidence threshold percentage is ≥ value, auto detection is treated as a success. The range is 0-100. |
Script Event Collection Settings
Property | Type | Default | Description |
eventcollector.scriptevent.enable | Boolean | TRUE | If TRUE, this event collection method is enabled on the Collector (assuming it is also specified in the eventcollector.defines setting). |
eventcollector.scriptevent.threadpool | Integer | 10 | The thread count in the pool. |
eventcollector.scriptevent.perCollector.perMin.threshold | Integer | 1000 | The maximum count of script events the Collector can generate per minute. |
eventcollector.scriptevent.perHostThreshold | Integer | 50 | The maximum events threshold per host on this Collector |
eventcollector.scriptevent.perHost.perMin.threshold | Integer | 500 | The maximum events threshold per host on this Collector, per minute. |
SNMP Trap Event Collection Settings
Property | Type | Default | Description |
eventcollector.snmptrap.enable | Boolean | TRUE | If TRUE, this event collection method is enabled on the Collector (assuming it is also specified in the eventcollector.defines setting). |
eventcollector.snmptrap.threadpool | Integer | 10 | The thread count in the pool. |
eventcollector.snmptrap.address | String | udp:0.0.0.0/162 | The listening port/IP address for SNMP traps. |
eventcollector.snmptrap.community | String | <EMPTY> | The community string (applicable to SNMPv1 and SNMPv2c only) |
eventcollector.snmptrap.security | String | public | Username credential (applicable to SNMPv3 only). |
eventcollector.snmptrap.auth | String | sha | The authentication algorithm (applicable to SNMPv3 only). “md5” is also supported here. |
eventcollector.snmptrap.auth.token | String | PleaseModifyThis | The secret token for authentication (similar to password). Applicable to SNMPv3 only. |
eventcollector.snmptrap.priv | String | aes128 | The privacy algorithm (applicable to SNMPv3 only). In addition to the default aes128 algorithm, the following values are supported: des | aes | 3des | aes128 | aes192 | aes256 | aes192c | aes256c. |
eventcollector.snmptrap.priv.token | String | PleaseModifyThis | The secret token for privacy (similar to password). Applicable to SNMPv3 only. |
Syslog Event Collection Settings
Property | Type | Default | Description |
eventcollector.syslog.enable | Boolean | TRUE | If TRUE, this event collection method is enabled on the Collector (assuming it is also specified in the eventcollector.defines setting). |
eventcollector.syslog.max.message.lenth | Integer | 1024 | The maximum message size (in bytes) that syslog will process. |
eventcollector.syslog.multi.thread.enable | Boolean | TRUE | If TRUE, enables multithreaded syslog server. |
eventcollector.syslog.threadpool | Integer | 10 | The thread count in the pool. |
eventcollector.syslog.port | Integer | 514 | The port used to receive Syslog messages. |
eventcollector.syslog.queue | Integer | 10000 | The queue capacity of Syslog executor. |
eventcollector.syslog.supportDateFormat.<n> | String | See details | The Syslog event date/time formatting strings. By default, the following formats <n> are supported:
1=MMM dd HH:mm:ss 2=yyyy-MM-dd’T’HH:mm:ss.SSS 3=MMM dd HH:mm:ss.SSS z 4=’date=’yyyy-MM-dd’,time=’HH:mm:ss 5=MMM dd yyyy HH:mm:ss 6=yyyy-MM-dd’T’HH:mm:ss.SSSXXX 7=yyyy-MM-dd’T’HH:mm:ss.SSSSSS’Z’ |
eventcollector.syslog.receive.buffer.size | Integer | 1048576 | The buffer size (in bytes) of Syslog event Collector UDP receive. |
Windows Event Log Collection Settings
Property | Type | Default | Description |
eventcollector.wineventlog.enable | Boolean | TRUE | If TRUE, this event collection method is enabled on the Collector (assuming it is also specified in the eventcollector.defines setting). |
eventcollector.wineventlog.threadpool | Integer | 10 | The thread count in the pool. |
eventcollector.wineventlog.timeout | Integer | 120 | The timeout period (in seconds) for handling a Windows event log event collection task. |
eventcollector.wineventlog.criticalmappings | String | Critical,Critique,Kritisch,Critico | If critical events are being reported to the event log in a language other than English, add the localized string to this setting for mapping to critical severity. |
eventcollector.wineventlog.enable.single.mode.timeout.count | Integer | 5 | When the timeout count for Windows event log collection surpasses the value assigned to this setting, single mode is enabled. This setting is only considered if event collector.wineventlog.timeout.enable.single.mode is TRUE. |
eventcollector.wineventlog.timeout.enable.single.mode | Boolean | TRUE | If TRUE, single mode is enabled when the timeout count surpasses the value assigned to eventcollector.wineventlog.enable.single.mode.timeout.count. |
eventcollector.wineventlog.interval | Integer | 120 | Interval to collect winevent log. |
eventcollector.wineventlog.max.eventitem | Integer | 500 | The maximum number of events fetched per request. If the value of this setting is 0, it will fetch all items per request. |
eventcollector.wineventlog.query.delay.time.seconds | Integer | 30 | The time (in seconds) that a query will be delayed. |
eventcollector.wineventlog.query.time.range.seconds* | Integer | 120 | The Windows event log query time range (in seconds) for each query. |
Active Discovery Settings
Property | Type | Default | Description |
ad.snmp.retry4filter.count | Integer | 3 | The number of times the SNMP Active Discovery task will retry filtering walked result. |
ad.snmp.client.retry.count | Integer | 1 | The number of times the SNMP Active Discovery task will retry. |
ad.snmp.walk.timeout | Integer | 300 | The timeout period (in seconds) for the SNMPwalk in an SNMP Active Discovery task. |
ad.snmp.retry4filter.count | Integer | 3 | The number of times the SNMP Active Discovery task will retry filtering walked result. |
discover.default.timeoutInSec | Integer | 3600 | The timeout period (in seconds) for Active Discovery tasks. |
discover.delayscheduler.enable | Boolean | TRUE | If TRUE, Active Discovery tasks are executed with the delay defined in the discover.delayscheduler.periodInSec setting. |
discover.delayscheduler.periodInSec | Integer | 60 | Active Discovery task schedule delay (in seconds). |
discover.history.maxItem | Integer | 32 | The maximum count for the number of Active Discovery history items stored in memory. |
discover.jdbc.timeoutInSec | Integer | 120 | The timeout (in seconds) for JDBC tasks in Active Discovery. |
discover.perfmon.timeoutInSec | Integer | 120 | The timeout (in seconds) for Perfmon tasks in Active Discovery. |
discover.queue.capacity | Integer | 5000 * 50 | Queue capacity for Active Discovery task. |
discover.workers | Integer | Varies based on Collector size. See Collector Capacity. | The number of worker resources allocated for Active Discovery iterations. |
discover.script.timeoutInSec | Integer | 300 | The timeout (in seconds) for script tasks in Active Discovery. |
discover.wmi.timeoutInSec | Integer | 120 | The timeout (in seconds) for WMI tasks in Active Discovery. |
See PowerShell Settings for an additional setting that relates to Active Discovery. |
AutoProperties Settings
Property | Type | Default | Description |
autoprops.detectors.order | String | wmiDetector, snmpDetector | The order in which AutoProperties are detected. |
autoprops.timeout | Integer | 60 | The timeout period (in seconds) for AutoProperties task. |
autoprops.port.timeout | Integer | 60 | The timeout period (in seconds) for port scanning during a NetScan. |
autoprops.workers | Integer | Varies based on Collector size. See Collector Capacity. | The thread pool size for AutoProperties. |
autoprops.history.maxItem | Integer | 32 | The maximum count for the number of AutoProperties history items stored in memory. |
autoprops.esx.detectedUrlFormats | String | https://%s/sdk/vimServiceVersions.xml | The URL used to detect VMware ESX server. Use “%s” as a variable for the resource name. Multiple values are supported via comma-separated list. |
autoprops.jdbc.connectTimeout | Integer | 10 | The timeout period (in seconds) for JDBC AutoProperties connection. |
autoprops.jdbc.queryTimeout | Integer | 10 | The timeout period (in seconds) for JDBC AutoProperties query. |
autoprops.queue.capacity | Integer | 5000 | The queue capacity for AutoProperties tasks. |
autoprops.wmi.retry.interval.in.second | Integer | 5 | The retry interval (in seconds) for WMI AutoProperties task. |
autoprops.wmi.retry.max.times | Integer | 20 | The maximum number of retry times for WMI AutoProperties task. |
autoprops.wmi.timeout | Integer | 60 | The timeout period (in seconds) for WMI AutoProperties task. |
autoprops.xen.apicheck | Boolean | TRUE | If TRUE, the XenServer will be detected via API method. |
autoprops.xen.apicheck.workers | Integer | 4 | The thread count for detecting XenServer via API. |
autoprops.xen.apicheck.timeout | Integer | 10 | The timeout period (in seconds) for detecting XenServer via API. |
property.detecting.task.timeout | Integer | 300 | The timeout period (in seconds) for detecting properties. |
ConfigSource Settings
Property | Type | Default | Description |
configcollector.defines | String | script | Defines ConfigSource monitoring method; only “script” is supported. |
configcollector.postprocess.threadpool | Integer | 10 | The thread pool size for the configuration collection to post process the configuration. |
configcollector.postprocess.timeout.in.seconds | Integer | 30 | The timeout period (in seconds) for configuration post processing. |
configcollector.script.enable | Boolean | TRUE | If TRUE, enables script ConfigSource monitoring. |
configcollector.script.threadpool | Integer | 30 | The thread pool size for configuration collection script tasks. |
configcollector.script.timeout | Integer | 300 | The timeout period (in seconds) for configuration collection script tasks. |
config.update.timeout.in.millisecond | Integer | 60_000 or 1 min | The timeout period (in milliseconds) for reading/writing configuration files. |
configsource.configuration.max | Integer | 3145728 | The maximum length (in bytes) of configuration reported. |
Credential Vault Settings
The following table lists the configuration properties to set in the Collector agent.conf.
Property | Type | Default | Description |
vault.bypass | Boolean | TRUE | If the value for the property is true, the vault API calls won’t happen. Note: You must set the property to false, to enable the vault API calls. |
vault.credentials.cache.expirationtime | Integer | 60 | The property specifies the value in minutes for the expiry of the credential in the vault cache on the collector. After this time, the credentials in the vault cache will expire. |
vault.credentials.refresh.delay | Integer | 15 | Controls the Credential Vault integration cache expiration refresh delay in seconds. |
vault.url.cache.enabled | Boolean | FALSE | The property specifies whether the URL cache is enabled or not. By default the property is set as false; however, if the property is set to true the collector caches the URL and secret value. If the URL for lmvault property is found in the URL cache, the respective secret value is returned, else the API call is made to fetch the secret from the vault. Setting this property to ‘true’ should resolve API rate-limiting issues. |
vault.url.cache.max.size | Integer | 1000 | The property defines the number of URLs that will be stored in the cache. |
CSProxy Settings
Property | Type | Default | Description |
csproxy.enable | Boolean | TRUE | If TRUE, the CSProxy is enabled. |
csproxy.dns.host | String | appproxy.logicmonitor.com | The DNS host for the CSProxy. |
csproxy.active.time | Integer | 1 | The time (in minutes) after which agent will begin to detect the platform. |
csproxy.santaba.detect.period | Integer | 1 | Interval (in minutes) in which platform is detected. |
csproxy.switch.time | Integer | 12 | The delay (in seconds) before the Collector will switch to CSProxy if Santaba is detected as unavailable. This will avoid unnecessary switching in cases of very brief network interruption. |
csproxy.debug.host | String | 127.0.0.1 | The host used in csproxy checking. |
csproxy.debug.mode | Boolean | TRUE | If TRUE, csproxy debug mode is enabled. |
LM Logs
Property | Type | Default | Description |
lmlogs.syslog.enabled | Boolean | FALSE | If TRUE, LM Logs feature is enabled in Collector. When enabled, Syslog EventSources will stop working. |
lmlogs.syslog.hostname.format | String | IP | Determines how hostname received in the syslog message will be resolved. Other acceptable values include “FQDN”, “HOSTNAME”, and “DO_NOTHING”. (If “DO_NOTHING” is set, the hostname is not resolved and add the received host directly as the resource id. |
lmlogs.syslog.property.name | String | system.hostname | Resource properties which we want to use for device mapping |
lmlogs.syslog.useTimestampWhenCollectorReceivedLogs | Boolean | FALSE | Set to TRUE in order to avoid the incorrect time parsing that results when syslog events you are sending to LogicMonitor do not include timezone information. |
logsource.syslog.filter.<n>.<filter>.<operation> | String | This is filter used in lmlogs
Where: 1) n is number from 1..n. 2) filter is i)severity ii) message iii) facility iv) application 3) operation will be i) equal ii) moreurgentthan iii) notequal iv) contain v) notcontain vi) regexmatch vii) regexnotmatch viii) exists ix) notexists x) greaterthan xi) greaterequal xii) lessthan xiii) lessequal E.g logsource.syslog.filter.1.severity.equal=error Configure agent for syslog Log Ingestion with filter error. |
Logger Settings
Logger settings control Collector logging. They are not related to LM Logs or EventSources.
Property | Type | Default | Description |
logger.level | String | info | The level of logging for Collector activities. Additional acceptable values include trace | debug | warn | error | disable. |
logger.output | String | console | Determines the location to which the logger outputs. |
logger.level.alerter | String | The value assigned to logger.level | The level of logging for Collector activities related to the alerter component. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.autoprops | String | The value assigned to logger.level | The level of logging for Collector activities related to AutoProperties. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.agent | String | The value assigned to logger.level | The level of logging for Collector activities related to the Collector component. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.batchscript | String | The value assigned to logger.level | The level of logging for Collector activities related to BatchScript data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.cim | String | The value assigned to logger.level | The level of logging for Collector activities related to CIM data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.datapump | String | The value assigned to logger.level | The level of logging for Collector activities related to Data Pump data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.dns | String | The value assigned to logger.level | The level of logging for Collector activities related to DNS data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.esx | String | The value assigned to logger.level | The level of logging for Collector activities related to ESX data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.externalwebpage | String | The value assigned to logger.level | The level of logging for Collector activities related to Web page data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.ipmi | String | The value assigned to logger.level | The level of logging for Collector activities related to IPMI data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.jdbc | String | The value assigned to logger.level | The level of logging for Collector activities related to JDBC data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.jmx | String | The value assigned to logger.level | The level of logging for Collector activities related to JMX data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.memcached | String | The value assigned to logger.level | The level of logging for Collector activities related to Memcached data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.mongo | String | The value assigned to logger.level | The level of logging for Collector activities related to Mongo data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.netapp | String | The value assigned to logger.level | The level of logging for Collector activities related to NetApp data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.perfmon | String | The value assigned to logger.level | The level of logging for Collector activities related to Perfmon data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.ping | String | The value assigned to logger.level | The level of logging for Collector activities related to ping data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.script | String | The value assigned to logger.level | The level of logging for Collector activities related to script data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.snmp | String | The value assigned to logger.level | The level of logging for Collector activities related to SNMP data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.s3 | String | The value assigned to logger.level | The level of logging for Collector activities related to Amazon S3 data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.tcp | String | The value assigned to logger.level | The level of logging for Collector activities related to TCP data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.udp | String | The value assigned to logger.level | The level of logging for Collector activities related to UDP data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.webpage | String | The value assigned to logger.level | The level of logging for Collector activities related to web page data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.wmi | String | The value assigned to logger.level | The level of logging for Collector activities related to WMI data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.collector.xen | String | The value assigned to logger.level | The level of logging for Collector activities related to XenServer data collection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.controller | String | The value assigned to logger.level | The level of logging for Collector activities related to the controller component. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.discover | String | The value assigned to logger.level | The level of logging for Collector activities related to Active Discovery. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.eventcollector.httpevent | String | The value assigned to logger.level | The level of logging for Collector activities related to event collection via HTTP. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.eventcollector.logfile | String | The value assigned to logger.level | The level of logging for Collector activities related to event collection via log files. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.eventcollector.scriptevent | String | The value assigned to logger.level | The level of logging for Collector activities related to event collection via script. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.eventcollector.snmptrap | String | The value assigned to logger.level | The level of logging for Collector activities related to event collection via SNMP trap. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.eventcollector.syslog | String | The value assigned to logger.level | The level of logging for Collector activities related to event collection via Syslog. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.eventcollector.wineventlog | String | The value assigned to logger.level | The level of logging for Collector activities related to event collection via Windows event logs. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.monitor | String | The value assigned to logger.level | The level of logging for Collector activities related to the monitoring component. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.propsdetection | String | The value assigned to logger.level | The level of logging for Collector activities related to property detection. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.reporter | String | The value assigned to logger.level | The level of logging for Collector activities related to reporting. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.sbproxy | String | The value assigned to logger.level | The level of logging for Collector activities related to the SBProxy. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.scanner | String | The value assigned to logger.level | The level of logging for Collector activities related to scanning. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.scriptproperty | String | The value assigned to logger.level | The level of logging for Collector activities related to scriptproperty. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.watchdog | String | The value assigned to logger.level | The level of logging for Collector activities related to the Watchdog service. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
logger.level.webservice | String | The value assigned to logger.level | The level of logging for Collector activities related to webservice. The acceptable values are trace | debug | info | warn | error | disable. If a value is not assigned to this setting, the value assigned to logger.level is used. |
reduce.logger.enable | Boolean | TRUE | If TRUE, the reduce logger task is enabled. |
reduce.logger.aggregate.threshold | Integer | 500 | Maximum number of logs to aggregate. |
reduce.logger.cache.number | Integer | 5 | The reduce cache number. |
reduce.logger.cache.expire.mills | Integer | 600_000/*10MIN*/ | Cache expiration time (in milliseconds). |
reduce.logger.schedule.interval | Integer | 60000 | The interval (in seconds) in which the reduce logger task is scheduled to run. |
Network Traffic Flow (NetFlow) Settings
Property | Type | Default | Description |
netflow.enable | Boolean | TRUE | If TRUE, NetFlow module is enabled on Collector. |
netflow.ports | Integer | 2055 | The UDP listening port for NetFlow protocol data. Supports NetFlow versions 1,3, 5, 7 and 9. |
netflow.sflow.ports | Integer | 6343 | The UDP listening port for sFlow protocol data. |
netflow.datadir | String | netflow | The path of the HSQL database. |
netflow.datadir.maxSizeInMB | Integer | 10240 | The maximum size (in megabytes) of the NetFlow data directory. |
netflow.log.maxNumPerMinute | Integer | 5 | how frequently the netflow error must get logged, default value is 5 |
netflow.netflow9.templateLife | Integer | 720 | The expiration time (in hours) of NetFlow version 9 template. |
netflow.topFlowSamples | Integer | 1000 | The maximum sample number of top flows. Allowed range is from 100-2000. |
netflow.ignoreTimestampValidate | Boolean | FALSE | If TRUE, the Collector ignores network flow device time information. Currently, the only known devices that necessitate overriding the default FALSE value are Sonicwalls. |
netflow.nbar.enabled | Boolean | FALSE | If TRUE, the Collector parses the applicationID and ApplicationType. LogicMonitor Enterprise and Collector version 29.101 or higher are required. |
netflow.ipv6.enabled | Boolean | TRUE | If FALSE, the Collector will ignore flows from IPv6 addresses. |
netflow.log.largeBytesOrPackets | Integer | 1073741824 | Logs flows with packets or bytes larger than the integer specified. |
netflow.use.new.logic | Boolean | TRUE | If TRUE, multi-threaded receiver logic is executed; ELSE, a single thread receiver. |
netflow.threads | Integer | 1 | If netflow.use.new.logic is TRUE, the number specified here determines the number of NetFlow threads. |
sflow.threads | Integer | 1 | If netflow.use.new.logic is TRUE, the number specified here determines the number of sFlow threads. |
netty.rcv.buff.size | Integer | 65507 | Netflow receiver buffer size (in bytes). |
netflow.sqlLog.enable | Boolean | TRUE | If TRUE, NetFlow HSQL logging is enabled. |
netflow.max.flow.in.cache | Integer | 100000 | The maximum number of flows to hold in temporary cache. |
netflow.max.apprecords.in.cache | Integer | 100 | The maximum number of application records to hold in temporary cache. |
netflow.flowcache.duration | Integer | 10 | The duration (in seconds) flows persist in cache. |
netflow.appcache.duration | Integer | 3600 | The duration (in seconds) application records persist in cache. |
netflow.executeCP.timeIntervalInSec | Integer | 5400 | The interval (in seconds) that NetFlow HSQL DB check is executed. |
netflow.executeCP.datasize | Integer | 300000000 | NetFlow HSQL DB check size (in bytes). |
PowerShell Settings
Property | Type | Default | Description |
powershell.policy | String | RemoteSigned | PowerShell execution policy. Other possible values include: Restricted | AllSigned | Unrestricted |
powershell.error.action | String | Continue | Defines the action to be taken when a non-terminating error event occurs.
|
powershell.redirect.exception.enable | Boolean | TRUE | If TRUE, PowerShell exceptions are passed as messages to user by rethrowing. |
powershell.trap.exception.enable | Boolean | FALSE | If TRUE, PowerShell exceptions are “trapped” and a value of 0 is returned regardless of what is returned by the script. |
powershell.console.width | Integer | 80 | The console screen buffer width (in columns) for PowerShell |
powershell.spse.enable | Boolean | TRUE | If TRUE, the standalone PowerShell script engine (SPSE) is enabled and all PowerShell scripts will run in the SPSE. |
powershell.spse.executor.reject.sleep.time.in.ms | Integer | 100 | The retry interval (in milliseconds) for submitting requests to SPSE. Only considered if powershell.spse.enable is TRUE. |
powershell.spse.process.count.min | Integer | 3 | The minimum number of PowerShell processes. Only considered if powershell.spse.enable is TRUE. |
powershell.spse.process.count.max | Integer | 10 | The maximum number of PowerShell processes. Only considered if powershell.spse.enable is TRUE. |
powershell.spse.queue.size | Integer | 10 | The queue size for SPSE tasks to be reported. Only considered if powershell.spse.enable is TRUE. |
powershell.spse.ad.timeout.in.sec | Integer | 300 | The timeout period (in seconds) for PowerShell script in Active Discovery context. Only considered if powershell.spse.enable is TRUE. |
Proxy and SSL Settings
Property | Type | Default | Description |
proxy.enable | Boolean | FALSE | If TRUE, the Collector will communicate through an HTTP proxy (rather than connect directly with the LogicMonitor data centers) using the proxy.<x> settings specified. |
proxy.host | String | <EMPTY> | Designates the IP address of the HTTP proxy server. |
proxy.port | Integer | <EMPTY> | Designates the port the HTTP proxy server uses. |
proxy.user | String | <EMPTY> | Designates the username the Collector uses when connecting to the HTTP proxy. |
proxy.pass | String | <EMPTY> | Designates the password the Collector uses when connecting to the HTTP proxy. |
proxy.global | Boolean | FALSE | If TRUE, ESX and XEN traffic from the Collector is additionally pushed through the proxy. If FALSE, the proxy applies to traffic between the Collector and the LogicMonitor platform only. |
ssl.enable | Boolean | TRUE | If TRUE, the connection between the Collector and the LogicMonitor platform will be encrypted via SSL. |
EnforceLogicMonitorSSL | Boolean | TRUE | If TRUE, the Collector requires a valid SSL certificate issued directly from LogicMonitor in order to initiate communication. If one is not available, the Collector will fail to properly start. Setting to FALSE removes this SSL enforcement, lowering the security of the connection between your Collector and LogicMonitor. |
See Remote Session Settings for additional settings that relate to the proxy. |
Remote Session Settings
Property | Type | Default | Description |
remotesession.disable | Boolean | FALSE | If TRUE, Remote Session capabilities are disabled for all devices assigned to the Collector. |
remotesession.proxy.enable | Boolean | TRUE | If TRUE (and assuming the proxy.enable setting is also TRUE), the Collector’s remote sessions will connect to the relay server through the local HTTP proxy configured in Proxy and SSL Settings. If proxy.enable is FALSE, this setting is ignored. |
remotesession.useproxy.forceSSLCheck | Boolean | TRUE | If TRUE, the Collector requires a valid SSL certificate from the relay server. If one is not available, the remote session will fail to initiate. Setting to FALSE removes this SSL enforcement. |
SBProxy Settings
Property | Type | Default | Description |
sbproxy.address | String | 127.0.0.1 | Address of the SBProxy server. Generally, this should not be modified. |
sbproxy.connector.capacity | Integer | Varies based on Collector size. See Collector Capacity. | The maximum number of requests that the Collector can send in parallel to sbwinproxy and sblinuxproxy. |
sbproxy.downtime.seconds | Integer | 300 | The amount of time (in seconds) since the last received response that must pass before the SBProxy is considered down. The value range allowed for this setting is 300-1200. |
sbproxy.echo.failed.count | Integer | 3 | Check sbproxy status failed count. |
sbproxy.linux.threadPoolSize | Integer | 120 | The maximum number of threads initially available for processing SBProxy requests. |
sbproxy.linux.timeout | Integer | 30 | The timeout period (in seconds) for processing a Linux server request. |
sbproxy.logsize | Integer | 64 | Log size for sbproxy.log |
sbproxy.monitor.enable | Boolean | TRUE | If TRUE, the watchdog monitors the SBProxy |
sbproxy.pdhNoAuthentication | Boolean | FALSE | If TRUE, PDH authentication is enabled. |
sbproxy.port | Integer | 7211 | The port used to communicate between Watchdog and Collector services to SBProxy. |
sbproxy.process.timeout.thread.count | Integer | 2 | Timeout thread pool count. |
sbproxy.restartOn102 | Boolean | FALSE | If TRUE and Windows encounters error 102, SBProxy will attempt to restart itself (applicable to Perfmon and WMI). |
sbproxy.starting.duration.seconds* | Integer | 60 | The amount of time (in seconds) it is assumed that SBProxy will take to start up after Collector is up. During this period, NaN will not be reported. |
sbproxy.timeout.queue.size | Integer | 1024 | The size of sbproxy timeout queue. |
sbproxy.windows.pdhQueueCapacity | Integer | 200 | PDH task queue capacity. |
sbproxy.windows.pdhTaskTimeout | Integer | 0 | The timeout period (in seconds) for PDH task processing. If set to 0, no timeout. |
sbproxy.windows.pdhThreadPoolSize | Integer | 50 | The thread pool size for PDH task handling. |
sbproxy.windows.queueCapacity | Integer | 100 | The capacity of Windows sbproxy queue. |
sbproxy.windows.taskCommitTimeout | Integer | 30 | The timeout period for putting a received task into SBProxy’s internal processing queue . |
sbproxy.windows.taskTimeout | Integer | 0 | The timeout period (in seconds) for task processing. If set to 0, no timeout. |
sbproxy.windows.threadPoolSize | Integer | 10 | The thread pool size for tasks other than PDH or WMI. |
sbproxy.windows.wmiQueueCapacity | Integer | 200 | The task queue capacity for tasks WMI. |
sbproxy.windows.wmiTaskTimeout | Integer | 0 | The timeout period (in seconds) for processing tasks other than PDH. If set to 0, no timeout |
sbproxy.windows.wmiThreadPoolSize | Integer | 60 | The thread pool size for WMI task handling. |
sbproxy.wmi.wmi64enable | Boolean | FALSE | If TRUE, 64-bit WMI is enabled. |
See Watchdog Settings for additional settings that relate to the SBProxy. |
SSE Settings
Property | Type | Default | Description |
sse.log.root | String | <SBAGENTROOT>/logs | The location of the SSE log files. |
sse.collectorgroup.restartpolicy.processedtask.count | Integer | 2000000 | The task count at which the SSE Collector group will restart. |
sse.collectorgroup.spawnpolicy.process.maxcount | Integer | 1 | The maximum count of SSE processes that can be spawned for the Collector group. |
sse.collectorgroup.spawnpolicy.concurrenttask.maxcount | Integer | 400 | The number of tasks that can run concurrently for each Collector group SSE process. |
sse.collectorgroup.init.timeout.inSec | Integer | 40 | Timeout (in seconds) for Collector SSE process initialization. If initialization fails, script tasks will not be sent to SSE. |
sse.collectorgroup.jvm.locale | String | en-us | Allows tweaking of JVM locale. Tweaking is sometimes needed to correct date parsing in some locales. |
sse.collectorgroup.jvm.threadpool.maxsize | Integer | 200 | The maximum thread count for SSE processing for the Collector group. |
sse.collectorgroup.jvm.heap.minInMB | Integer | 32 | The minimum heap size (in megabytes) for Collector group SSE. |
sse.collectorgroup.jvm.heap.maxInMB | Integer | 0 | If the value = 0, the maximum SSE heap size is set dynamically based on the Collector size. If the value is > 0, the value provided is used as the maximum heap size, regardless of Collector size. The sse.collectorgroup.jvm.heap.max.controlByWrapper setting must be set to FALSE for this setting to be considered. |
sse.collectorgroup.jvm.metaspace.maxInMB | Integer | 0 | The maximum metaspace size (in megabytes) for Collector group SSE. |
sse.collectorgroup.jvm.heap.max.controlByWrapper | Boolean | TRUE | If TRUE, the maximum heap size for the Collector is controlled by the Collector’s Xmx configuration. |
sse.collectorgroup.required.totalPhysicalMemory.inMB | Integer | 2048 | The required physical memory (in megabytes) for the Collector host. If the actual total physical memory is less than this value, scripts will not be scheduled to the SSE Collector group. |
sse.collectorgroup.processSpawnCountPerMinute.limitation | Integer | 1 | The count limitation (per minute) that the spawning SSE process should not exceed. |
sse.collectorgroup.scheduler.taskqueue.maxsize | Integer | 10000 | The maximum number of task allowed in the task queue in the SSE engine. |
sse.collectorgroup.spawnpolicy.loadlevel.small.threshold | Integer | 200 | The task count threshold that allows LogicMonitor to determine if a process is under small load (as compared to count running tasks). |
sse.collectorgroup.trustallcerts.enable | Boolean | TRUE | If TRUE, trust all certs in SSE. Affects HTTPS connections from Collector. |
sse.restartOn.criticalClassNotFound | Boolean | FALSE | If TRUE, SSE will restart if critical classes cannot be loaded. |
sse.runtime.conf.path | String | ./../conf/service.conf | conf path |
sse.script.stopThread.useThreadStop | Boolean | FALSE | If TRUE, the thread.stop method will be used to force stop the SSE script. This method is deprecated and may cause issues as a result of an inconsistent state. If FALSE, thread.interrupt is called, which may not not stop some threads. |
collector.script.cache.timeout | Integer | 30 | Expiration timeout (in minutes) for script cache data. Available in Collector versions 29.100 or higher. |
Topology Mapping Settings
Property | Type | Default | Description |
eri.global.timeoutInSec | Integer | 300 | ERI global task timeout (in seconds). |
eri.history.maxItem | Integer | 32 | The maximum number of ERI history items stored in memory like it is history result. |
eri.queue.capacity | Integer | 5000 * 50 | ERI task queue capacity. |
eri.workers | Integer | 10 | The number of threads available for processing ERI requests or tasks. |
topology.global.timeoutInSec | Integer | 300 | Topology task timeout (in seconds). |
topology.history.maxItem | Integer | 1000 | The maximum number of topology task history items stored in memory (cache). |
topology.queue.capacity | Integer | 250000 | Topology task queue capacity. |
topology.workers | Integer | 10 | The number of threads available for processing topology requests or tasks. |
Watchdog Settings
Property | Type | Default | Description |
watchdog.check.agent.cant.start.interval.time.in.second | Integer | 240 | The interval (in seconds) in which it will be reported that the Collector can’t restart. |
watchdog.check.scheduled.task.enable | Boolean | FALSE | If TRUE, the watchdog will schedule a task to detect whether the Collector is working. |
watchdog.clean.dumperror.interval | Integer | 10 | The interval (in minutes) in which the watchdog will check the dump error logs. |
watchdog.clean.dumperror.patterns | String | sse_err_pid*.log,collector_err_pid*.log,hs_err_pid*.mdmp,hs_err_pid*.log,replay_pid*.log | The watchdog will check the dump error logs using the pattern provided as the value for this setting (e.g. “hs_err_pidXXX.log”) and delete the oldest Java critical logs. |
watchdog.credential.rotation.interval | Integer | 24 | The interval (in hours) in which the publicly signed certificates that the Collector uses to authenticate itself to the LogicMonitor platform are rotated. |
watchdog.credential.rotation.prohibition | Integer | 1 | Prohibits credential rotation to be more frequent than duration (in hours) set. If set to 0, no prohibition. |
watchdog.credential.rotation.testmode.in.second | Integer | 0 | The credential rotation interval (in seconds) for test purposes. |
watchdog.dump.sbproxy.memory.count | Integer | 1 | The number of reserve memory dump files for sbwinproxy. Maximum allowed value is 5. |
watchdog.dump.sbproxy.memory.enable | Boolean | FALSE | If TRUE, sbwinproxy memory dump is enabled when heartbeat times out. |
watchdog.dump.sbproxy.memory.wait.seconds | Integer | 30 | The amount of time (in seconds) before dump to sbwinproxy memory is completed. |
watchdog.feed.renew.interval.in.second | Integer | 10 | Interval (in minutes) to see if feed from the server needs to be loaded to get the latest information. |
watchdog.hang.ival | Integer | 600 | The interval (in seconds) for checking if the watchdog’s main loop is hung. |
watchdog.keep.alive.timeout.in.second | Integer | 60 | The timeout period (in seconds) for reading the keep-alive response from the Collector. |
watchdog.report.version.interval.in.second | Integer | 300 | Interval (in sec) to report collector version. |
watchdog.restart | Integer | 0 | Restart watchdog interval (in hours). If set to 0, watchdog is never restarted. |
watchdog.restart.blocked.collector.enable | Boolean | TRUE | If TRUE, the watchdog is able to restart blocked Collector. |
watchdog.status.port | Integer | 7213 | The watchdog status listening port (i.e. the port over which the Collector service communicates to the Watchdog service). |
watchdog.stop.then.start.agent.interval.seconds | Integer | 5 | The delay time (in seconds) the Watchdog will wait to start Collector when restarting the Collector. |
watchdog.wait.agent.start.time.inseconds | Integer | 45 | The delay time (in seconds) after Collector start for watchdog to begin checking Collector. |