# Agentless Monitoring

## How it works

Within the Agentless architecture, the platform establishes remote connections to PostgreSQL clusters through internal agents and gathers data using the PULL method.

This becomes particularly advantageous for monitoring cloud-managed clusters as well as PostgreSQL instances running in containers such as:

* [AWS Aurora](https://aws.amazon.com/rds/aurora/)
* [AWS RDS](https://aws.amazon.com/rds/)
* [Google Cloud SQL](https://cloud.google.com/sql/postgresql)&#x20;
* [Google AlloyDB](https://azure.microsoft.com/en-us/products/postgresql)
* [Microsoft Azure database](https://azure.microsoft.com/en-us/products/postgresql)
* [Kubernetes](https://kubernetes.io/)
* [Docker](https://www.docker.com/)
* Any other cloud managed database

{% hint style="info" %}
A hybrid architecture that integrates both agent-based and agentless methods is feasible.
{% endhint %}

<figure><img src="https://1072624949-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlcWi6G1jtNuyGT9C0pkc%2Fuploads%2FtFQRgXjjuaJ3ikc2cosK%2Fagentless_architecture.png?alt=media&#x26;token=0de352ea-68e5-42a9-b4fe-48a8563907ab" alt=""><figcaption><p>Agentless Architecture</p></figcaption></figure>

{% hint style="warning" %}
Using this approach, system metrics like CPU usage, memory usage, swap, network activity, and I/O operations are not monitored unless the [system\_stats extension](https://docs.datasentinel.io/manual/getting-started/postgresql-clusters/extensions/system_stats) is installed.
{% endhint %}

## Add Connection

### Through API

Please consult the API documentation for further information

{% content-ref url="../../implementation/platform-usage/api-reference/connection" %}
[connection](https://docs.datasentinel.io/manual/implementation/platform-usage/api-reference/connection)
{% endcontent-ref %}

### Through UI

Open tools menu:

<div align="left"><figure><img src="https://1072624949-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlcWi6G1jtNuyGT9C0pkc%2Fuploads%2FHhccaxD3bTyFJnLO7r7q%2Ftools_icon2.png?alt=media&#x26;token=0700ef7b-35a4-4a9c-96c0-fefd38affb4c" alt=""><figcaption></figcaption></figure></div>

Click on **Agentless settings:**

<div align="left"><figure><img src="https://1072624949-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlcWi6G1jtNuyGT9C0pkc%2Fuploads%2F57k5apGSeSq8KneISjia%2Ftools_menu2.png?alt=media&#x26;token=74afee75-26c2-45a5-a765-80bba9a8747b" alt=""><figcaption></figcaption></figure></div>

Then

<figure><img src="https://1072624949-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlcWi6G1jtNuyGT9C0pkc%2Fuploads%2F2ROpu64QuARtVEtebeCn%2Fagentless1.gif?alt=media&#x26;token=27f0e4f2-d86d-48f6-ba46-8ea93e735724" alt=""><figcaption><p>Adding a connection through the User Interface</p></figcaption></figure>

## Limit configuration

Table and query monitoring limits can be configured for monitored PostgreSQL instances (since [version 2025.11](https://docs.datasentinel.io/manual/release-notes#v2025.11))

Datasentinel monitors table and index activity **only if** the number of tables in the connected instance is below the configured limit.\
Query activity is also tracked, with each unique query assigned an ID and stored in a daily cache. If the number of collected queries exceeds the set limit, **query monitoring is automatically disabled for the remainder of the day** to manage resource usage.

{% hint style="warning" %}
Limits use default values if not set. (Refer to [Agent limit settings](https://docs.datasentinel.io/manual/implementation/agent-usage/cli#change-table-monitoring-limit) section for more details).
{% endhint %}

To set custom values:

{% stepper %}
{% step %}

### <sup>Edit configuration file</sup>

```bash
/datasentinel/soft/datasentinel_backend/config/datasentinel.yml
```

{% endstep %}

{% step %}

### <sup>Set desired values</sup>

```
agent:
  tables-monitoring-limit: 5000
  query-monitoring-limit: 15000

```

{% endstep %}

{% step %}

### <sup>Restart dispatcher service</sup>

```
sudo systemctl stop datasentinel_dispatcher
sudo systemctl start datasentinel_dispatcher
```

{% endstep %}
{% endstepper %}

{% hint style="warning" %}
Custom limits apply to all monitored instances using the agentless method.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.datasentinel.io/manual/features/other-features/agentless-monitoring.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
