Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 12 additions & 2 deletions qdrant/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# CHANGELOG - Qdrant

## 1.2.0 / 2025-12-08

***Changed***

* Deprecated `qdrant.collection.hardware.metric.cpu` in favor of `qdrant.collection.hardware.metric.cpu.count`

***Added***

* Added support for [new metrics](https://github.com/qdrant/qdrant/releases/tag/v1.16.0#:~:text=Metrics) introduced in Qdrant v1.16.0

## 1.1.1 / 2025-10-17

***Added***
Expand All @@ -8,12 +18,12 @@

## 1.1.0 / 2024-12-20

***Added***:
***Added***

* Support for new Hardware/Memory metrics.

## 1.0.0 / 2024-08-10

***Added***:
***Added***

* Initial Release
2 changes: 1 addition & 1 deletion qdrant/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ For Agent v7.21+ / v6.21+, follow the instructions below to install the Qdrant c
1. Run the following command to install the Agent integration:

```shell
datadog-agent integration install -t qdrant==1.1.0
datadog-agent integration install -t qdrant==1.2.0
```

2. Configure your integration similar to core [integrations][4].
Expand Down
2 changes: 1 addition & 1 deletion qdrant/datadog_checks/qdrant/__about__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = '1.1.0'
__version__ = '1.2.0'
3 changes: 2 additions & 1 deletion qdrant/datadog_checks/qdrant/config_models/instance.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from typing import Any, Optional, Union

from pydantic import BaseModel, ConfigDict, Field, field_validator, model_validator
from typing_extensions import Literal

from datadog_checks.base.utils.functions import identity
from datadog_checks.base.utils.models import validation
Expand Down Expand Up @@ -105,7 +106,7 @@ class InstanceConfig(BaseModel):
ignore_connection_errors: Optional[bool] = None
ignore_tags: Optional[tuple[str, ...]] = None
include_labels: Optional[tuple[str, ...]] = None
kerberos_auth: Optional[str] = None
kerberos_auth: Optional[Literal['required', 'optional', 'disabled']] = None
kerberos_cache: Optional[str] = None
kerberos_delegate: Optional[bool] = None
kerberos_force_initiate: Optional[bool] = None
Expand Down
23 changes: 23 additions & 0 deletions qdrant/datadog_checks/qdrant/metrics.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,21 @@
"collections_vector_total": "collections.vector.total",
"collections_full_total": "collections.full.total",
"collections_aggregated_total": "collections.aggregated.total",
"collection_vectors": "collection.vectors",
"collection_active_replicas_min": "collection.active.replicas.min",
"collection_active_replicas_max": "collection.active.replicas.max",
"collection_running_optimizations": "collection.running.optimizations",
"collection_points": "collection.points",
"collection_dead_replicas": "collection.dead.replicas",
"snapshot_creation_running": "snapshot.creation.running",
"snapshot_recovery_running": "snapshot.recovery.running",
"snapshot_created": "snapshot.created",
"rest_responses": "rest.responses",
"rest_responses_fail": "rest.responses.fail",
"rest_responses_avg_duration_seconds": "rest.responses.avg.duration.seconds",
"rest_responses_min_duration_seconds": "rest.responses.min.duration.seconds",
"rest_responses_max_duration_seconds": "rest.responses.max.duration.seconds",
"rest_responses_duration_seconds": "rest.responses.duration.seconds",
"grpc_responses": "grpc.responses",
"grpc_responses_fail": "grpc.responses.fail",
"grpc_responses_avg_duration_seconds": "grpc.responses.avg.duration.seconds",
Expand All @@ -26,4 +36,17 @@
"memory_resident_bytes": "memory.resident.bytes",
"memory_retained_bytes": "memory.retained.bytes",
"collection_hardware_metric_cpu": "collection.hardware.metric.cpu",
"collection_hardware_metric_payload_io_read": "collection.hardware.metric.payload.io.read",
"collection_hardware_metric_payload_index_io_read": "collection.hardware.metric.payload.index.io.read",
"collection_hardware_metric_payload_index_io_write": "collection.hardware.metric.payload.index.io.write",
"collection_hardware_metric_payload_io_write": "collection.hardware.metric.payload.io.write",
"collection_hardware_metric_vector_io_read": "collection.hardware.metric.vector.io.read",
"collection_hardware_metric_vector_io_write": "collection.hardware.metric.vector.io.write",
"process_threads": "process.threads",
"process_open_mmaps": "process.open.mmaps",
"system_max_mmaps": "system.max.mmaps",
"process_open_fds": "process.open.fds",
"process_max_fds": "process.max.fds",
"process_minor_page_faults": "process.minor.page.faults",
"process_major_page_faults": "process.major.page.faults",
}
28 changes: 27 additions & 1 deletion qdrant/metadata.csv
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,30 @@ qdrant.memory.allocated.bytes,gauge,,,,Total number of bytes allocated by the ap
qdrant.memory.metadata.bytes,gauge,,,,Total number of bytes dedicated to metadata,0,qdrant,qdrant memory metadata bytes,
qdrant.memory.resident.bytes,gauge,,,,Maximum number of bytes in physically resident data pages mapped,0,qdrant,qdrant memory resident bytes,
qdrant.memory.retained.bytes,gauge,,,,Total number of bytes in virtual memory mappings,0,qdrant,qdrant memory retained bytes,
qdrant.collection.hardware.metric.cpu,gauge,,,,CPU measurements of a collection,0,qdrant,qdrant collection hardware metric cpu,
qdrant.collection.hardware.metric.cpu,gauge,,,,[Deprecated] CPU measurements of a collection. Use qdrant.collection.hardware.metric.cpu.count instead.,0,qdrant,qdrant collection hardware metric cpu,
qdrant.collection.hardware.metric.cpu.count,count,,,,CPU measurements of a collection,0,qdrant,qdrant collection hardware metric cpu count,
qdrant.collection.vectors,gauge,,,,Number of vectors grouped by vector name,0,qdrant,qdrant collection vectors,
qdrant.collection.active.replicas.min,gauge,,,,Minimum number of active replicas across all shards,0,qdrant,qdrant collection active replicas min,
qdrant.collection.active.replicas.max,gauge,,,,Maximum number of active replicas across all shards,0,qdrant,qdrant collection active replicas max,
qdrant.collection.running.optimizations,gauge,,,,Number of currently running optimization tasks per collection,0,qdrant,qdrant collection running optimizations,
qdrant.collection.points,gauge,,,,Approximate number of points per collection,0,qdrant,qdrant collection points,
qdrant.collection.dead.replicas,gauge,,,,Total number of shard replicas in non-active state,0,qdrant,qdrant collection dead replicas,
qdrant.snapshot.creation.running,gauge,,,,Number of snapshot creations that are currently running,0,qdrant,qdrant snapshot creation running,
qdrant.snapshot.recovery.running,gauge,,,,Number of snapshot recovery operations currently running,0,qdrant,qdrant snapshot recovery running,
qdrant.snapshot.created.count,count,,,,Total number of snapshots created,0,qdrant,qdrant snapshot created count,
qdrant.rest.responses.duration.seconds.count,count,,,,Total count of responses for histogram buckets,0,qdrant,qdrant rest responses duration seconds count,
qdrant.rest.responses.duration.seconds.sum,count,,second,,Total sum of response durations in seconds,0,qdrant,qdrant rest responses duration seconds sum,
qdrant.rest.responses.duration.seconds.bucket,count,,,,Response duration histogram buckets,0,qdrant,qdrant rest responses duration seconds bucket,
qdrant.collection.hardware.metric.payload.io.read.count,count,,,,Total IO payload read metrics of a collection,0,qdrant,qdrant collection hardware metric payload io read count,
qdrant.collection.hardware.metric.payload.index.io.read.count,count,,,,Total IO payload index read metrics of a collection,0,qdrant,qdrant collection hardware metric payload index io read count,
qdrant.collection.hardware.metric.payload.index.io.write.count,count,,,,Total IO payload index write metrics of a collection,0,qdrant,qdrant collection hardware metric payload index io write count,
qdrant.collection.hardware.metric.payload.io.write.count,count,,,,Total IO payload write metrics of a collection,0,qdrant,qdrant collection hardware metric payload io write count,
qdrant.collection.hardware.metric.vector.io.read.count,count,,,,Total IO vector read metrics of a collection,0,qdrant,qdrant collection hardware metric vector io read count,
qdrant.collection.hardware.metric.vector.io.write.count,count,,,,Total IO vector write metrics of a collection,0,qdrant,qdrant collection hardware metric vector io write count,
qdrant.process.threads,gauge,,,,Count of active threads,0,qdrant,qdrant process threads,
qdrant.process.open.mmaps,gauge,,,,Count of open memory-mapped files,0,qdrant,qdrant process open mmaps,
qdrant.system.max.mmaps,gauge,,,,System-wide limit of open memory-mapped files,0,qdrant,qdrant system max mmaps,
qdrant.process.open.fds,gauge,,,,Count of currently open file descriptors,0,qdrant,qdrant process open fds,
qdrant.process.max.fds,gauge,,,,Limit for open file descriptors,0,qdrant,qdrant process max fds,
qdrant.process.minor.page.faults.count,count,,,,Count of minor page faults which didn't cause a disk access,0,qdrant,qdrant process minor page faults,
qdrant.process.major.page.faults.count,count,,,,Count of disk accesses caused by a memory-mapped page fault,0,qdrant,qdrant process major page faults,
32 changes: 26 additions & 6 deletions qdrant/tests/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,46 @@ def read_file(file_path, is_json=False):
"qdrant.app.status.recovery.mode",
"qdrant.collections.total",
"qdrant.collections.vector.total",
"qdrant.collection.vectors",
"qdrant.collection.active.replicas.min",
"qdrant.collection.active.replicas.max",
"qdrant.collection.running.optimizations",
"qdrant.collection.points",
"qdrant.collection.dead.replicas",
"qdrant.snapshot.creation.running",
"qdrant.snapshot.recovery.running",
"qdrant.snapshot.created.count",
"qdrant.rest.responses.avg.duration.seconds",
"qdrant.rest.responses.min.duration.seconds",
"qdrant.rest.responses.max.duration.seconds",
"qdrant.grpc.responses.avg.duration.seconds",
"qdrant.grpc.responses.min.duration.seconds",
"qdrant.grpc.responses.max.duration.seconds",
"qdrant.rest.responses.duration.seconds.count",
"qdrant.rest.responses.duration.seconds.sum",
"qdrant.rest.responses.duration.seconds.bucket",
"qdrant.cluster.enabled",
"qdrant.cluster.peers.total",
"qdrant.cluster.term.count",
"qdrant.cluster.commit.count",
"qdrant.cluster.pending.operations.total",
"qdrant.cluster.voter",
"qdrant.grpc.responses.count",
"qdrant.grpc.responses.fail.count",
"qdrant.rest.responses.count",
"qdrant.rest.responses.fail.count",
"qdrant.collection.hardware.metric.cpu",
"qdrant.collection.hardware.metric.cpu.count",
"qdrant.collection.hardware.metric.payload.io.read.count",
"qdrant.collection.hardware.metric.payload.index.io.read.count",
"qdrant.collection.hardware.metric.payload.index.io.write.count",
"qdrant.collection.hardware.metric.payload.io.write.count",
"qdrant.collection.hardware.metric.vector.io.read.count",
"qdrant.collection.hardware.metric.vector.io.write.count",
"qdrant.memory.active.bytes",
"qdrant.memory.metadata.bytes",
"qdrant.memory.resident.bytes",
"qdrant.memory.retained.bytes",
"qdrant.memory.allocated.bytes",
"qdrant.process.threads",
"qdrant.process.open.mmaps",
"qdrant.system.max.mmaps",
"qdrant.process.open.fds",
"qdrant.process.max.fds",
"qdrant.process.minor.page.faults.count",
"qdrant.process.major.page.faults.count",
]
Loading
Loading