Skip to content
Draft
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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions cmd/mimir/config-descriptor.json
Original file line number Diff line number Diff line change
Expand Up @@ -6793,6 +6793,17 @@
"fieldType": "boolean",
"fieldCategory": "advanced"
},
{
"kind": "field",
"name": "otel_persist_resource_attributes",
"required": false,
"desc": "Whether to persist OTel resource attributes per time series as metadata in Prometheus TSDB blocks. Resource attributes are stored in series_metadata.parquet files within blocks and can be queried via the /api/v1/resource_attributes endpoint.",
"fieldValue": null,
"fieldDefaultValue": false,
"fieldFlag": "distributor.otel-persist-resource-attributes",
"fieldType": "boolean",
"fieldCategory": "experimental"
},
{
"kind": "field",
"name": "ingest_storage_read_consistency",
Expand Down
2 changes: 2 additions & 0 deletions cmd/mimir/help-all.txt.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -1315,6 +1315,8 @@ Usage of ./cmd/mimir/mimir:
Whether to enable automatic suffixes to names of metrics ingested through OTLP.
-distributor.otel-native-delta-ingestion
[experimental] Whether to enable native ingestion of delta OTLP metrics, which will store the raw delta sample values without conversion. If disabled, delta metrics will be rejected. Delta support is in an early stage of development. The ingestion and querying process is likely to change over time.
-distributor.otel-persist-resource-attributes
[experimental] Whether to persist OTel resource attributes per time series as metadata in Prometheus TSDB blocks. Resource attributes are stored in series_metadata.parquet files within blocks and can be queried via the /api/v1/resource_attributes endpoint.
-distributor.otel-promote-resource-attributes comma-separated-list-of-strings
[experimental] Optionally specify OTel resource attributes to promote to labels.
-distributor.otel-promote-scope-metadata
Expand Down
12 changes: 12 additions & 0 deletions development/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,18 @@ Available profiles:

> **Note**: Compose down will stop all profiles unless specified.

## OTLP Resource Attributes Demo

The monolithic mode includes a demo script that showcases how Mimir persists OTel resource attributes from OTLP metrics. This demonstrates the end-to-end flow from OTLP ingestion through both ingesters and store-gateways.

```bash
cd mimir-monolithic-mode
./compose-up.sh
./scripts/otlp-resource-attrs-demo.sh
```

See [mimir-monolithic-mode/scripts/README.md](./mimir-monolithic-mode/scripts/README.md) for details.

## OTEL collector

Experimental support for running OpenTelemetry collector in the Monolithic mode.
Expand Down
3 changes: 3 additions & 0 deletions development/mimir-ingest-storage/config/runtime.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@ overrides:
anonymous:
labels_query_optimizer_enabled: true
ruler_evaluation_consistency_max_delay: 1m
otel_persist_resource_attributes: true
# Enable experimental PromQL functions for the info() function demo.
enabled_promql_experimental_functions: all
3 changes: 2 additions & 1 deletion development/mimir-ingest-storage/docker-compose.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@ std.manifestYamlDoc({
hostname: 'nginx',
image: 'nginxinc/nginx-unprivileged:1.22-alpine',
depends_on: [
'distributor-1',
'ingester-zone-a-1',
'alertmanager-1',
'ruler-1',
Expand All @@ -193,7 +194,7 @@ std.manifestYamlDoc({
],
environment: [
'NGINX_ENVSUBST_OUTPUT_DIR=/etc/nginx',
'DISTRIBUTOR_HOST=ingester-zone-a-1:8080',
'DISTRIBUTOR_HOST=distributor-1:8080',
'ALERT_MANAGER_HOST=alertmanager-1:8080',
'RULER_HOST=ruler-1:8080',
'QUERY_FRONTEND_HOST=query-frontend:8080',
Expand Down
3 changes: 2 additions & 1 deletion development/mimir-ingest-storage/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -291,6 +291,7 @@
- ".data-minio:/data:delegated"
"nginx":
"depends_on":
- "distributor-1"
- "ingester-zone-a-1"
- "alertmanager-1"
- "ruler-1"
Expand All @@ -299,7 +300,7 @@
- "grafana"
"environment":
- "NGINX_ENVSUBST_OUTPUT_DIR=/etc/nginx"
- "DISTRIBUTOR_HOST=ingester-zone-a-1:8080"
- "DISTRIBUTOR_HOST=distributor-1:8080"
- "ALERT_MANAGER_HOST=alertmanager-1:8080"
- "RULER_HOST=ruler-1:8080"
- "QUERY_FRONTEND_HOST=query-frontend:8080"
Expand Down
Loading
Loading