Supported OS Linux Windows Mac OS

Versión de la integración1.0.0
This page is not yet available in Spanish. We are working on its translation.
If you have any questions or feedback about our current translation project, feel free to reach out to us!

Overview

DuckDB is a high-performance analytical database system. It is available as a standalone CLI application and has clients for Python, R, Java, Wasm, etc., with deep integrations with packages such as pandas and dplyr.

For more information on using DuckDB, refer to the DuckDB documentation.

This check monitors DuckDB through the Datadog Agent.

Setup

DuckDB has two configurable options for concurrency:

  • One process can both read and write to the database.
  • Multiple processes can read from the database, but no processes can write (access_mode = ‘READ_ONLY’).
The Datadog Agent uses the read_only mode to get metrics, with a default frequency of 60 seconds (min_collection_interval). You can increase this value to reduce concurrency issues.

Follow the instructions below to install and configure this check for an Agent running on a host. For containerized environments, see the Autodiscovery Integration Templates for guidance on applying these instructions.

Installation

The DuckDB check is included in the Datadog Agent package. No additional installation is needed on your server.

Dependencies

The duckdb client library is required. To install it, ensure you have a working compiler and run:

Unix
sudo -Hu dd-agent /opt/datadog-agent/embedded/bin/pip install duckdb==1.1.1
Windows
"C:\Program Files\Datadog\Datadog Agent\embedded3\python.exe" -m pip install duckdb==1.1.1

Configuration

  1. Edit the duckdb.d/conf.yaml file, in the conf.d/ folder at the root of your Agent’s configuration directory to start collecting your duckdb performance data. See the sample duckdb.d/conf.yaml for all available configuration options.

  2. Restart the Agent.

Validation

Run the Agent’s status subcommand and look for duckdb under the Checks section.

Data Collected

Metrics

duckdb.memory_limit
(gauge)
The maximum memory of the system.
Shown as byte
duckdb.partitioned_write_flush_threshold
(gauge)
The threshold in number of rows after which we flush a thread state when writing using PARTITION_BY.
duckdb.partitioned_write_max_open_files
(gauge)
The maximum amount of files the system can keep open before flushing to disk when writing using PARTITION_BY.
duckdb.wal_autocheckpoint
(gauge)
The WAL size threshold at which to automatically trigger a checkpoint.
Shown as byte
duckdb.worker_threads
(gauge)
The number of total threads used by the system.

Events

The DuckDB integration does not include any events.

Service Checks

The DuckDB integration does not include any service checks.

Troubleshooting

Need help? Contact Datadog support.