Agent configuration file

To apply changes it is necessary to restart the service

  • saymon-agent (Linux/Mac OS);

  • SaymonAgent (Windows).

Parameters of the agent configuration file <Agent_installation_folder>/conf/agent.properties are described below.

General settings

Parameter Description

agent.discoveryEnabled

It enables automatic searching for network devices by the agent;

  • false – automatic searching is disabled,

  • true – automatic searching is enabled.

By default – false – automatic searching is disabled.

The parent object for discovered objects can be set with the parameter discovery_parent_id in the section Server of the server configuration file.

agent.id

It is the unique ID of the object of the class Saymon Agent in the web interface.

With agent.id=0 a new object of the Saymon Agent class will be created on the server. By default agents are created in the root object. To set the different parent object for created agents it is necessary to specify the parameter agent_registration_parent_id in the section Server of the server configuration file.

The ID of the newly created object will be transferred to the agent. In this case the ../saymon-agent/storage/registration.json file will be created on the host with the agent. The agent ID will be stored in the file.

In order to run the procedure of obtaining an ID again, for example, if it is necessary to connect the agent to another server, you just need to delete the registration.json file and restart the agent.

agent.scriptsEnabled

It enables execution scripts with text by the agent;

  • false – execution scripts is disabled,

  • true – execution scripts is enabled.

By default – true – execution scripts is enabled.

agent.snmpTrapEnabled

It enables receiving traps by the agent;

  • false – receiving traps is disabled,

  • true – receiving traps is enabled.

By default – false – receiving traps is disabled.

To learn more about SNMP Trap functionality refer to the sections Event Log and SNMP Trap.

agent.snmpTrapListenPort

Port for receiving traps.

By default 1162.

agent.snmpTrapReceiverThreadPoolSize

Number of simultaneous flows for receiving traps.

By default 4.

agent.snmpTrapV3User

SNMPv3 user (security name) for traps receiver.

Doesn’t have a default value.

agent.snmpTrapV3AuthPassword

SNMPv3 USM authentication password for traps receiver.

Doesn’t have a default value.

agent.snmpTrapV3PrivacyPassword

SNMPv3 USM privacy (encryption) password for traps receiver.

Doesn’t have a default value.

metrics.buffer.in-memory.capacity

It enables the buffer for data storage when connection between the agent and the server is lost.

The value of this parameter is the number of data sets from the agent (probe results), which will be stored in the buffer until the connection is restored. When the connection is restored, all data from the buffer is transmitted to the server and the buffer is cleared. If the buffer is overflowed, then the new data sets replace the oldest ones.

By default the buffer is disabled.

This functionality is supported by the agents v.5.0.0 or higher.

server.host

Address of the Kafka server.

By default 127.0.0.1

server.port

Kafka port to connect to the system server.

By default 9092.

server.secure

Connect to Kafka broker through TLS.

To use encrypted connection, Kafka broker must be configured to receive encrypted connections on port set in the server.port parameter (default – 9092).

If necessary, you can explicitly disable this server.secure parameter to use plaintext connection to the Kafka broker.

By default true.

Starting with agent version 5.0.0 encryption is enabled by default. When you are updating an agent on an existing installation, you need to either ensure Kafka is set up to work via TLS or explicitly disable this parameter in the configuration file.

Connection to Kafka Cluster

While using Kafka Cluster it is necessary to use additional parameters starting with kafka. Please refer to the Kafka documentation for the complete parameters list and their description.

Example:

...
kafka.bootstrap.servers=192.168.1.11:9092,192.168.1.12:9092,192.168.1.13:9092
kafka.security.protocol=SASL_SSL
kafka.ssl.truststore.location=/opt/kafka/kafka.client.truststore.jks
kafka.ssl.truststore.password=saymon
kafka.sasl.mechanism=PLAIN
kafka.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="user" password="password"
...
Parameter Description

kafka.bootstrap.servers

List of host:port pairs which are used for the initial connection to the Kafka Cluster.

If you explicitly specify server.host and server.port parameters, this parameter is automatically generated.
With using Kafka Cluster the server.host field must not be empty. There must be specified the address of one of the kafka.bootstrap.servers.

Authorization and encryption

Parameter Description

kafka.sasl.jaas.config

Parameters of context of entering to the system for SASL-connections in the format which is used by JAAS configuration files.

kafka.sasl.mechanism

SASL mechanism, which is used for client connections.

kafka.security.protocol

Protocol, which is used to communicate with brokers.

Possible values:

  • PLAINTEXT,

  • SSL,

  • SASL_PLAINTEXT,

  • SASL_SSL.

This parameter is connected to the server.secure parameter. If the server.secure parameter is set to false, this parameter can only be set to PLAINTEXT. If server.secure parameter is set to true or not set, it can use every parameter other than PLAINTEXT.

kafka.ssl.truststore.location

Truststore file location.

kafka.ssl.truststore.password

Password for the truststore file. If the password is not set, the configured file still can be used, but without integrity check.