diff --git a/qdrant/CHANGELOG.md b/qdrant/CHANGELOG.md index c156545486..92306628e0 100644 --- a/qdrant/CHANGELOG.md +++ b/qdrant/CHANGELOG.md @@ -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*** @@ -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 diff --git a/qdrant/README.md b/qdrant/README.md index 975983723f..3976ce388d 100644 --- a/qdrant/README.md +++ b/qdrant/README.md @@ -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]. diff --git a/qdrant/datadog_checks/qdrant/__about__.py b/qdrant/datadog_checks/qdrant/__about__.py index 1a72d32e57..58d478ab16 100644 --- a/qdrant/datadog_checks/qdrant/__about__.py +++ b/qdrant/datadog_checks/qdrant/__about__.py @@ -1 +1 @@ -__version__ = '1.1.0' +__version__ = '1.2.0' diff --git a/qdrant/datadog_checks/qdrant/config_models/instance.py b/qdrant/datadog_checks/qdrant/config_models/instance.py index 07646f388b..f7acc096e8 100644 --- a/qdrant/datadog_checks/qdrant/config_models/instance.py +++ b/qdrant/datadog_checks/qdrant/config_models/instance.py @@ -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 @@ -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 diff --git a/qdrant/datadog_checks/qdrant/metrics.py b/qdrant/datadog_checks/qdrant/metrics.py index 4841593593..1600c22a4a 100644 --- a/qdrant/datadog_checks/qdrant/metrics.py +++ b/qdrant/datadog_checks/qdrant/metrics.py @@ -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", @@ -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", } diff --git a/qdrant/metadata.csv b/qdrant/metadata.csv index 093e4f7b75..deef3832c7 100644 --- a/qdrant/metadata.csv +++ b/qdrant/metadata.csv @@ -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, \ No newline at end of file +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, \ No newline at end of file diff --git a/qdrant/tests/common.py b/qdrant/tests/common.py index c1e2f04661..f714a5ee10 100644 --- a/qdrant/tests/common.py +++ b/qdrant/tests/common.py @@ -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", ] diff --git a/qdrant/tests/data/metrics.txt b/qdrant/tests/data/metrics.txt index cdc745c74a..aa21e7ccf5 100644 --- a/qdrant/tests/data/metrics.txt +++ b/qdrant/tests/data/metrics.txt @@ -1,12 +1,45 @@ +# HELP app_info information about qdrant server +# TYPE app_info gauge +app_info{name="qdrant",version="1.16.0"} 1 # HELP app_status_recovery_mode features enabled in qdrant server # TYPE app_status_recovery_mode gauge app_status_recovery_mode 0 # HELP collections_total number of collections # TYPE collections_total gauge -collections_total 6 +collections_total 2 # HELP collections_vector_total total number of vectors in all collections # TYPE collections_vector_total gauge -collections_vector_total 31732 +collections_vector_total 5528 +# HELP collection_vectors amount of vectors grouped by vector name +# TYPE collection_vectors gauge +collection_vectors{collection="midlib",vector=""} 5415 +collection_vectors{collection="democollection",vector="text_embedding"} 113 +# HELP collection_active_replicas_min minimum number of active replicas across all shards +# TYPE collection_active_replicas_min gauge +collection_active_replicas_min 1 +# HELP collection_active_replicas_max maximum number of active replicas across all shards +# TYPE collection_active_replicas_max gauge +collection_active_replicas_max 1 +# HELP collection_running_optimizations number of currently running optimization tasks per collection +# TYPE collection_running_optimizations gauge +collection_running_optimizations{id="midlib"} 0 +collection_running_optimizations{id="democollection"} 0 +# HELP collection_points approximate amount of points per collection +# TYPE collection_points gauge +collection_points{id="midlib"} 5415 +collection_points{id="democollection"} 111 +# HELP collection_dead_replicas total amount of shard replicas in non-active state +# TYPE collection_dead_replicas gauge +collection_dead_replicas 0 +# HELP snapshot_creation_running amount of snapshot creations that are currently running +# TYPE snapshot_creation_running gauge +snapshot_creation_running{id="democollection"} 0 +# HELP snapshot_recovery_running amount of snapshot recovery operations currently running +# TYPE snapshot_recovery_running gauge +snapshot_recovery_running{id="democollection"} 0 +# HELP snapshot_created_total total amount of snapshots created +# TYPE snapshot_created_total counter +snapshot_created_total{id="democollection"} 2 # HELP cluster_enabled is cluster support enabled # TYPE cluster_enabled gauge cluster_enabled 1 @@ -15,10 +48,10 @@ cluster_enabled 1 cluster_peers_total 1 # HELP cluster_term current cluster term # TYPE cluster_term counter -cluster_term 26 +cluster_term 47 # HELP cluster_commit index of last committed (finalized) operation cluster peer is aware of # TYPE cluster_commit counter -cluster_commit{peer_id="7921884851411016"} 2425 +cluster_commit{peer_id="7921884851411016"} 2618 # HELP cluster_pending_operations_total total number of pending operations for cluster peer # TYPE cluster_pending_operations_total gauge cluster_pending_operations_total 0 @@ -27,130 +60,223 @@ cluster_pending_operations_total 0 cluster_voter 1 # HELP rest_responses_total total number of responses # TYPE rest_responses_total counter -rest_responses_total{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 9 -rest_responses_total{method="POST",endpoint="/collections/{name}/points/search",status="200"} 101 -rest_responses_total{method="PUT",endpoint="/collections/{name}/points",status="200"} 224 -rest_responses_total{method="POST",endpoint="/collections/{name}/points/count",status="200"} 15 +rest_responses_total{method="POST",endpoint="/collections/{name}/points",status="200"} 8 +rest_responses_total{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 100 +rest_responses_total{method="POST",endpoint="/collections/{name}/points/query",status="200"} 252 +rest_responses_total{method="POST",endpoint="/collections/{name}/points/query",status="400"} 1 +rest_responses_total{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 1 +rest_responses_total{method="PUT",endpoint="/collections/{name}/points",status="200"} 52 +rest_responses_total{method="PUT",endpoint="/collections/{name}/points",status="400"} 1 +rest_responses_total{method="POST",endpoint="/collections/{name}/points/count",status="200"} 2 +rest_responses_total{method="PUT",endpoint="/collections/{name}/index",status="400"} 1 +rest_responses_total{method="PUT",endpoint="/collections/{name}/index",status="200"} 2 # HELP rest_responses_fail_total total number of failed responses # TYPE rest_responses_fail_total counter +rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points",status="200"} 0 +rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 0 +rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points/query",status="200"} 0 +rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points/query",status="400"} 0 rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0 -rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points/search",status="200"} 0 rest_responses_fail_total{method="PUT",endpoint="/collections/{name}/points",status="200"} 0 +rest_responses_fail_total{method="PUT",endpoint="/collections/{name}/points",status="400"} 0 rest_responses_fail_total{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0 +rest_responses_fail_total{method="PUT",endpoint="/collections/{name}/index",status="400"} 0 +rest_responses_fail_total{method="PUT",endpoint="/collections/{name}/index",status="200"} 0 # HELP rest_responses_avg_duration_seconds average response duration # TYPE rest_responses_avg_duration_seconds gauge -rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.001840878662109375 -rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/search",status="200"} 0.003668298583984375 -rest_responses_avg_duration_seconds{method="PUT",endpoint="/collections/{name}/points",status="200"} 0.00682784912109375 -rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.0007937852172851562 +rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points",status="200"} 0.01690822265625 +rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 0.003515589599609375 +rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/query",status="200"} 0.0025283466796875 +rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.040016 +rest_responses_avg_duration_seconds{method="PUT",endpoint="/collections/{name}/points",status="200"} 2.156108 +rest_responses_avg_duration_seconds{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.00204025 +rest_responses_avg_duration_seconds{method="PUT",endpoint="/collections/{name}/index",status="200"} 0.1499955 # HELP rest_responses_min_duration_seconds minimum response duration # TYPE rest_responses_min_duration_seconds gauge -rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.000383 -rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/search",status="200"} 0.000367 -rest_responses_min_duration_seconds{method="PUT",endpoint="/collections/{name}/points",status="200"} 0.001587 -rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.00024 +rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points",status="200"} 0.001339 +rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 0.001475 +rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/query",status="200"} 0.001166 +rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.040016 +rest_responses_min_duration_seconds{method="PUT",endpoint="/collections/{name}/points",status="200"} 0.473069 +rest_responses_min_duration_seconds{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.00181 +rest_responses_min_duration_seconds{method="PUT",endpoint="/collections/{name}/index",status="200"} 0.123248 # HELP rest_responses_max_duration_seconds maximum response duration # TYPE rest_responses_max_duration_seconds gauge -rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.003487 -rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/search",status="200"} 0.061462 -rest_responses_max_duration_seconds{method="PUT",endpoint="/collections/{name}/points",status="200"} 0.069317 -rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.002136 +rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points",status="200"} 0.046438 +rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 0.034556 +rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/query",status="200"} 0.023851 +rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.040016 +rest_responses_max_duration_seconds{method="PUT",endpoint="/collections/{name}/points",status="200"} 10.632136 +rest_responses_max_duration_seconds{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.002117 +rest_responses_max_duration_seconds{method="PUT",endpoint="/collections/{name}/index",status="200"} 0.230238 # HELP rest_responses_duration_seconds response duration histogram # TYPE rest_responses_duration_seconds histogram -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.0001"} 0 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.0005"} 3 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.001"} 5 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.005"} 9 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="+Inf"} 9 -rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.0118 -rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 9 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.0001"} 0 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.0005"} 41 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.001"} 67 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.005"} 79 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.01"} 91 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.05"} 100 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="0.1"} 101 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/search",status="200",le="+Inf"} 101 -rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/search",status="200"} 0.3416 -rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/search",status="200"} 101 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.001"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.005"} 7 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.01"} 7 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.02"} 7 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.05"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.1"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="0.5"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="1"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="5"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="10"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="50"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points",status="200",le="+Inf"} 8 +rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points",status="200"} 0.058108 +rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points",status="200"} 8 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.001"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.005"} 80 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.01"} 95 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.02"} 99 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.05"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.1"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="0.5"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="1"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="5"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="10"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="50"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/payload",status="200",le="+Inf"} 100 +rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 0.373807 +rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/payload",status="200"} 100 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.001"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.005"} 227 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.01"} 242 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.02"} 251 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.05"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.1"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="0.5"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="1"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="5"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="10"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="50"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/query",status="200",le="+Inf"} 252 +rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/query",status="200"} 0.587522 +rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/query",status="200"} 252 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.001"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.005"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.01"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.02"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.05"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.1"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="0.5"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="1"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="5"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="10"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="50"} 1 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/scroll",status="200",le="+Inf"} 1 +rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 0.040016 +rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/scroll",status="200"} 1 rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.001"} 0 -rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.005"} 133 -rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.01"} 169 -rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.05"} 223 -rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.1"} 224 -rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="+Inf"} 224 -rest_responses_duration_seconds_sum{method="PUT",endpoint="/collections/{name}/points",status="200"} 1.70627 -rest_responses_duration_seconds_count{method="PUT",endpoint="/collections/{name}/points",status="200"} 224 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.0001"} 0 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.0005"} 9 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.001"} 13 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.005"} 15 -rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="+Inf"} 15 -rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.008975 -rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/count",status="200"} 15 -# HELP grpc_responses_total total number of responses -# TYPE grpc_responses_total counter -grpc_responses_total{endpoint="/qdrant.Points/Upsert"} 6 -grpc_responses_total{endpoint="/qdrant.Points/Query"} 1 -grpc_responses_total{endpoint="/qdrant.Points/Scroll"} 6 -# HELP grpc_responses_fail_total total number of failed responses -# TYPE grpc_responses_fail_total counter -grpc_responses_fail_total{endpoint="/qdrant.Points/Upsert"} 0 -grpc_responses_fail_total{endpoint="/qdrant.Points/Query"} 0 -grpc_responses_fail_total{endpoint="/qdrant.Points/Scroll"} 0 -# HELP grpc_responses_avg_duration_seconds average response duration -# TYPE grpc_responses_avg_duration_seconds gauge -grpc_responses_avg_duration_seconds{endpoint="/qdrant.Points/Upsert"} 0.0096579775390625 -grpc_responses_avg_duration_seconds{endpoint="/qdrant.Points/Query"} 0.001953 -grpc_responses_avg_duration_seconds{endpoint="/qdrant.Points/Scroll"} 0.0006911055297851563 -# HELP grpc_responses_min_duration_seconds minimum response duration -# TYPE grpc_responses_min_duration_seconds gauge -grpc_responses_min_duration_seconds{endpoint="/qdrant.Points/Upsert"} 0.000996 -grpc_responses_min_duration_seconds{endpoint="/qdrant.Points/Query"} 0.001953 -grpc_responses_min_duration_seconds{endpoint="/qdrant.Points/Scroll"} 0.000309 -# HELP grpc_responses_max_duration_seconds maximum response duration -# TYPE grpc_responses_max_duration_seconds gauge -grpc_responses_max_duration_seconds{endpoint="/qdrant.Points/Upsert"} 0.01462 -grpc_responses_max_duration_seconds{endpoint="/qdrant.Points/Query"} 0.001953 -grpc_responses_max_duration_seconds{endpoint="/qdrant.Points/Scroll"} 0.002253 -# HELP grpc_responses_duration_seconds response duration histogram -# TYPE grpc_responses_duration_seconds histogram -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Upsert",le="0.0005"} 0 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Upsert",le="0.001"} 1 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Upsert",le="0.005"} 4 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Upsert",le="0.01"} 4 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Upsert",le="0.05"} 6 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Upsert",le="+Inf"} 6 -grpc_responses_duration_seconds_sum{endpoint="/qdrant.Points/Upsert"} 0.0332 -grpc_responses_duration_seconds_count{endpoint="/qdrant.Points/Upsert"} 6 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Query",le="0.001"} 0 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Query",le="0.005"} 1 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Query",le="+Inf"} 1 -grpc_responses_duration_seconds_sum{endpoint="/qdrant.Points/Query"} 0.001953 -grpc_responses_duration_seconds_count{endpoint="/qdrant.Points/Query"} 1 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Scroll",le="0.0001"} 0 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Scroll",le="0.0005"} 2 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Scroll",le="0.001"} 5 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Scroll",le="0.005"} 6 -grpc_responses_duration_seconds_bucket{endpoint="/qdrant.Points/Scroll",le="+Inf"} 6 -grpc_responses_duration_seconds_sum{endpoint="/qdrant.Points/Scroll"} 0.004966 -grpc_responses_duration_seconds_count{endpoint="/qdrant.Points/Scroll"} 6 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.005"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.01"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.02"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.05"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.1"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="0.5"} 1 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="1"} 19 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="5"} 48 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="10"} 51 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="50"} 52 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/points",status="200",le="+Inf"} 52 +rest_responses_duration_seconds_sum{method="PUT",endpoint="/collections/{name}/points",status="200"} 95.227707 +rest_responses_duration_seconds_count{method="PUT",endpoint="/collections/{name}/points",status="200"} 52 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.001"} 0 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.005"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.01"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.02"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.05"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.1"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="0.5"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="1"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="5"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="10"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="50"} 2 +rest_responses_duration_seconds_bucket{method="POST",endpoint="/collections/{name}/points/count",status="200",le="+Inf"} 2 +rest_responses_duration_seconds_sum{method="POST",endpoint="/collections/{name}/points/count",status="200"} 0.003927 +rest_responses_duration_seconds_count{method="POST",endpoint="/collections/{name}/points/count",status="200"} 2 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.001"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.005"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.01"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.02"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.05"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.1"} 0 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="0.5"} 2 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="1"} 2 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="5"} 2 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="10"} 2 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="50"} 2 +rest_responses_duration_seconds_bucket{method="PUT",endpoint="/collections/{name}/index",status="200",le="+Inf"} 2 +rest_responses_duration_seconds_sum{method="PUT",endpoint="/collections/{name}/index",status="200"} 0.353486 +rest_responses_duration_seconds_count{method="PUT",endpoint="/collections/{name}/index",status="200"} 2 # HELP collection_hardware_metric_cpu CPU measurements of a collection -# TYPE collection_hardware_metric_cpu gauge -collection_hardware_metric_cpu{id="rag2"} 159744 +# TYPE collection_hardware_metric_cpu counter +collection_hardware_metric_cpu{id="democollection"} 0 +collection_hardware_metric_cpu{id="midlib"} 0 +collection_hardware_metric_cpu{id="benchmark_collection"} 384307200 +# HELP collection_hardware_metric_payload_io_read Total IO payload read metrics of a collection +# TYPE collection_hardware_metric_payload_io_read counter +collection_hardware_metric_payload_io_read{id="democollection"} 12281 +collection_hardware_metric_payload_io_read{id="midlib"} 374 +collection_hardware_metric_payload_io_read{id="benchmark_collection"} 470344 +# HELP collection_hardware_metric_payload_index_io_read Total IO payload index read metrics of a collection +# TYPE collection_hardware_metric_payload_index_io_read counter +collection_hardware_metric_payload_index_io_read{id="democollection"} 0 +collection_hardware_metric_payload_index_io_read{id="midlib"} 0 +collection_hardware_metric_payload_index_io_read{id="benchmark_collection"} 0 +# HELP collection_hardware_metric_payload_index_io_write Total IO payload index write metrics of a collection +# TYPE collection_hardware_metric_payload_index_io_write counter +collection_hardware_metric_payload_index_io_write{id="democollection"} 0 +collection_hardware_metric_payload_index_io_write{id="midlib"} 0 +collection_hardware_metric_payload_index_io_write{id="benchmark_collection"} 28000 +# HELP collection_hardware_metric_payload_io_write Total IO payload write metrics of a collection +# TYPE collection_hardware_metric_payload_io_write counter +collection_hardware_metric_payload_io_write{id="democollection"} 0 +collection_hardware_metric_payload_io_write{id="midlib"} 0 +collection_hardware_metric_payload_io_write{id="benchmark_collection"} 472203 +# HELP collection_hardware_metric_vector_io_read Total IO vector read metrics of a collection +# TYPE collection_hardware_metric_vector_io_read counter +collection_hardware_metric_vector_io_read{id="democollection"} 0 +collection_hardware_metric_vector_io_read{id="midlib"} 0 +collection_hardware_metric_vector_io_read{id="benchmark_collection"} 0 +# HELP collection_hardware_metric_vector_io_write Total IO vector write metrics of a collection +# TYPE collection_hardware_metric_vector_io_write counter +collection_hardware_metric_vector_io_write{id="democollection"} 0 +collection_hardware_metric_vector_io_write{id="midlib"} 0 +collection_hardware_metric_vector_io_write{id="benchmark_collection"} 7987200 # HELP memory_active_bytes Total number of bytes in active pages allocated by the application # TYPE memory_active_bytes gauge -memory_active_bytes 211828736 +memory_active_bytes 19935232 # HELP memory_allocated_bytes Total number of bytes allocated by the application # TYPE memory_allocated_bytes gauge -memory_allocated_bytes 205169536 +memory_allocated_bytes 15588904 # HELP memory_metadata_bytes Total number of bytes dedicated to metadata # TYPE memory_metadata_bytes gauge -memory_metadata_bytes 7406976 +memory_metadata_bytes 7415680 # HELP memory_resident_bytes Maximum number of bytes in physically resident data pages mapped # TYPE memory_resident_bytes gauge -memory_resident_bytes 219181056 +memory_resident_bytes 32653312 # HELP memory_retained_bytes Total number of bytes in virtual memory mappings # TYPE memory_retained_bytes gauge -memory_retained_bytes 146206720 \ No newline at end of file +memory_retained_bytes 249184256 +# HELP process_threads count of active threads +# TYPE process_threads gauge +process_threads 34 +# HELP process_open_mmaps count of open mmaps +# TYPE process_open_mmaps gauge +process_open_mmaps 288 +# HELP system_max_mmaps system wide limit of open mmaps +# TYPE system_max_mmaps gauge +system_max_mmaps 262144 +# HELP process_open_fds count of currently open file descriptors +# TYPE process_open_fds gauge +process_open_fds 53 +# HELP process_max_fds limit for open file descriptors +# TYPE process_max_fds gauge +process_max_fds 1048576 +# HELP process_minor_page_faults_total count of minor page faults which didn't cause a disk access +# TYPE process_minor_page_faults_total counter +process_minor_page_faults_total 1813914 +# HELP process_major_page_faults_total count of disk accesses caused by a mmap page fault +# TYPE process_major_page_faults_total counter +process_major_page_faults_total 6715 \ No newline at end of file