Skip to main content

Agent communication settings

Network & security

WhaTap transfers monitoring data after TCP connection between the server and the agent.

WhaTap Agent Network

The agent handles data transfer and server control requests through a single TCP session. The node agent does not use UDP communication. Open the firewall from the node agent to the WhaTap collection server.

Collection server address and port

WhaTap servers are divided into data region servers, front servers, and Eureka. The data regions include Proxy, Yard, Keeper, etc. Among them, the agent communicates with the proxy server.

Set the proxy server address of the Whatap server in the Node agent (e.g. whatap.server.host=10.0.3.1/10.0.3.2). When setting the server address, enter as many addresses as the proxy server count. WhaTap server can use one or multiple proxy servers depending on the installation method.

WhaTap Proxy server listens on the port 6600. If there is no separate setting in the agent, the agent attempts to connect the port 6600.

whatap.conf
whatap.server.port=6600
Note

wo proxy servers cannot use different ports. When using multiple proxy servers, the listening port must be the same.

Communication connectivity and security

WhaTap is designed on the premise of collecting monitoring data from public networks. Accordingly, all monitoring data is encrypted and transmitted to the server. When lots of encrypted data is sent, it may cause overhead. WhaTap selectively encrypts data. The communication procedure between agents and the server is as follows:

  1. Generate and copy the access key from the project creation menu.

  2. The access key includes the private key. Be careful not to be disclosed.

  3. Restart the Node.js application server.

  4. The WhaTap agent establishes the TCP session with the server.

  5. Request a security key for a new session by encrypting data with the private key for communication included in the access key.

  6. The server creates a new security key for the session requested by the agent and sends it down to the agent.

  7. The security key of the session has two encryption keys. They are encryption keys for the ASC algorithm and the simple password.

  8. Afterwards, the agent uses the ASC secret key for sensitive data such as text and control data. Relatively secure data such as numeric value undergoes simple encryption before transmission to the server.

Agent communication buffer

The agent may cause failures when TCP connection between servers is delayed. Accordingly, the collected performance data is not transmitted directly to the network.

The agent has two internal communication buffers for communication.

net_send_queue1_size=512
net_send_queue2_size=1024

Queue1 buffers most of the performance data that is especially sent on a regular basis, and Queue2 separately buffers the transaction trace (ProfilePack) and ActiveStackPack.

The agent communicates with the server based on queues. When the server is down, part of the memory is consumed by the agent. No more problems occur.

Reconnecting the agent

If the agent is disconnected from the server, it attempts to reconnect 3 times every 5-10 seconds. After that, reconnection attempt is not made.

Network configuration options

The following explains how to configure the network to transmit the data collected by agents from the application servers to the server. The major configuration options are the collection server host, port, timeout value, network transfer size, and data transfer queue size, which are important to ensure the agent's efficient data management and reliable server communication.

  • whatap_server_host ip_address

    Default 127.0.0.1,127.0.0.1

    Specify the server to transfer the data collected by the agent. If there are multiple IP addresses for collection server redundancy, use comma (,) as the delimiter. The proxy of the collection server must be in listening state for the set IP address.

  • whatap_server_port tcp_port

    Default 6600

    Set the collection server port. Because only one port can be set, the collection servers set in the whatap_server_host option must use the same port.

  • tcp_so_timeout MiliSecond

    Default 60000

    Set the socket time out of the TCP session that communicates with the collection server.

  • tcp_connection_timeout MiliSecond

    Default 5000

    Set the connection time out of the TCP session that communicates with the collection server.

  • net_send_max_bytes Byte

    Default 5242880

    Maximum data size in bytes the agent can collect and transfer over the network at a time.

  • net_send_queue1_size Int

    Default 512

    It sets the size of the queue to be used for data transmission except for trace data.

  • net_send_queue2_size Int

    Default 1024

    It sets the size of the queue to be used for trace data transmission.