🕶️Agent
Datasentinel offers two monitoring approaches: agent-based and agentless. This guide focuses on the installation of an agent, applicable when you opt for the agent-based monitoring method.
The examples are based on a standard PostgreSQL installation with a server running the CentOS 7 operating system
Step-by-Step Installation Instructions
Download file
(Deprecated) RedHat/Centos 6
(Deprecated) Debian Stretch
(Deprecated) Debian Jessie
The file size is approximately 35 MB.
Install and start the agent
Uncompress the downloaded file
tar xvzf datasentinel-agent-rhel9.tar.gzThere are two ways to start the agent:
Using an alias
alias datasentinel='DATASENTINEL_PATH=`pwd`/datasentinel;LD_LIBRARY_PATH=$DATASENTINEL_PATH/lib/ $DATASENTINEL_PATH/datasentinel'
datasentinel start agentBy setting environment variables
export DATASENTINEL_PATH="`pwd`/datasentinel"
export LD_LIBRARY_PATH=$DATASENTINEL_PATH/lib
export PATH=$DATASENTINEL_PATH:$PATH
datasentinel start agentTest the status
datasentinel status agent Copyright 2023 (c) Datasentinel- All rights reserved www.datasentinel.io
================================================================================
Agent
Version : 3.3.0
Server : pg-crm-4529
Port : 8282
Start time : 2023-03-18 15:45:31
Collection rate : low
Table monitoring limit : 1000
Query monitoring limit : 30000
Sql max size : 256000
Proxy
host :
port : 0
user :
password :
Upload
host : upload_server_to_be_defined
port : 443
Connections
declared : 0
running : 0
not running : 0Check this point if the agent is up and running, but the CLI is indicating a negative response:
What could be the reason if the agent is running but the CLI responds with "NO"?
The agent registers its server name with the platform, enabling communication between the platform and the agent, as well as ensuring proper functionality of the agent CLI
If the server name is unknown (for example, not present in DNS servers), you can set the following environment variable before starting the agent:
// Example
export DATASENTINEL_AGENT_HOST=172.16.250.199Token settings
A token is required to communicate with the platform.
The token is the license provided by the Datasentinel team. You can also copy the token from Agents Submenu in the User Interface.
// Setting the token
datasentinel set token <<token_value>>The agent uses a self-signed certificate found in the config subdirectory.
cert_datasentinel.pemkey_datasentinel.pem
PostgreSQL
Example of configuring and adding a connection. Refer to PostgreSQL clusters for more details
The pg_stat_statements extension must be installed in the internal database named postgres before monitoring a cluster.
User
Version >= 10
create user datasentinel password 'myPassword';
grant pg_monitor,pg_read_all_settings,pg_read_all_stats to datasentinel;
// If you intend to utilize the option for terminating a session directly from the User Interface
grant pg_signal_backend to datasentinel;The default setting for the PostgreSQL search_path variable is "$user", public.
If the search_path has been modified at the instance level, it's essential to ensure that the user account, typically datasentinel, includes the public schema in its search_path.
If the public schema is not included, you will need to update it accordingly.
File pg_hba.conf
Add authorization for the user datasentinel to connect to all databases with a password
Reload the configuration
Add Instance
The tags are customizable, allowing you to define your own tags. They are extremely useful in the user interface for filtering, grouping data, and defining role-based access.
🏷️TagsUseful CLI commands
⌨️CLIDisplay the agent status
Display the connections
API
🧩APIBy default, the agent listens on port 8282, but you have the flexibility to modify this configuration.
Configuration Files
The agent stores its configuration on the hidden directory .datasentinel located in the user’s home directory.
2 files are present:
agent.ymlconnections.yml
Log File
The agent’s actions are recorded in the datasentinel.log file located in the log subdirectory of its distribution.
The log file is automatically rotated to remove outdated entries and manage data retention.
By default, the log level is set to INFO. To increase the log level, one can set it to debug in the [agent] section of the configuration file agent.yml.
Last updated