Compare commits
3
Commits
apdex-alert
...
loki-tsdb
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e708e418ba
|
||
|
|
aa61e17bae | ||
|
|
01111b992d |
@@ -79,6 +79,12 @@ SECRET_BASIC_AUTH_VERSION=v1
|
||||
# LOKI_RETENTION_PERIOD=744h
|
||||
# LOKI_STORAGE_FILESYSTEM=1
|
||||
#
|
||||
# Opt in to migrating the deprecated boltdb-shipper index store to TSDB, from this date
|
||||
# onward (YYYY-MM-DD). MUST be a FUTURE date, e.g. the day after you deploy this: a past
|
||||
# or same-day date makes both stores claim that day's data, breaking queries for it.
|
||||
# Logs from before this date are still ingested and queried from boltdb-shipper.
|
||||
# LOKI_TSDB_FROM_DATE=2026-11-01
|
||||
#
|
||||
## S3 Storage
|
||||
# LOKI_STORAGE_S3=1
|
||||
# LOKI_AWS_ENDPOINT=https://minio.autonomic.zone
|
||||
|
||||
@@ -130,6 +130,18 @@ $ echo '{
|
||||
$ systemctl restart docker.service
|
||||
```
|
||||
|
||||
### Upgrading: Loki TSDB migration
|
||||
|
||||
Loki's index store defaults to `boltdb-shipper`, which is deprecated upstream in favour of
|
||||
TSDB. To migrate an existing deployment without losing access to already-ingested logs, set
|
||||
`LOKI_TSDB_FROM_DATE` in your `.env` (see `.env.sample`) to a date on or after the day after
|
||||
your deploy, then `abra app deploy`. Logs from before that date stay on boltdb-shipper and
|
||||
remain queryable as before; only logs from that date onward are indexed with TSDB.
|
||||
|
||||
**The date must be in the future when you deploy it, never today or earlier**: both stores share the same
|
||||
per-day table, so a past or same-day date makes them collide over that day's data and
|
||||
breaks querying it.
|
||||
|
||||
### Setup Push Gateway
|
||||
|
||||
1. Enable in the env file by uncommenting the following lines:
|
||||
|
||||
@@ -5,11 +5,11 @@ export GF_STACKS_DASH_VERSION=v3
|
||||
export GF_TRAEFIK_DASH_VERSION=v3
|
||||
export GF_BACKUP_DASH_VERSION=v1
|
||||
export GF_CUSTOM_INI_VERSION=v4
|
||||
export LOKI_YML_VERSION=v3
|
||||
export LOKI_YML_VERSION=v4
|
||||
export PROMETHEUS_YML_VERSION=v2
|
||||
export MATRIX_ALERTMANAGER_CONFIG_VERSION=v1
|
||||
export MATRIX_ALERTMANAGER_ENTRYPOINT_VERSION=v1
|
||||
export GF_ALERTS_NODE_VERSION=v3
|
||||
export GF_ALERTS_NODE_VERSION=v4
|
||||
export CONFIG_ALLOY_VERSION=v3
|
||||
|
||||
# migrates secrets from old names to new names by reading values from the
|
||||
|
||||
@@ -87,7 +87,7 @@ groups:
|
||||
datasourceUid: PBFA97CFB590B2093
|
||||
model:
|
||||
editorMode: code
|
||||
expr: (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) * 100
|
||||
expr: 100 - ((node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) * 100)
|
||||
instant: true
|
||||
intervalMs: 1000
|
||||
legendFormat: __auto
|
||||
|
||||
@@ -22,6 +22,7 @@ services:
|
||||
- STACK_NAME
|
||||
- LOKI_STORAGE_FILESYSTEM
|
||||
- LOKI_STORAGE_S3
|
||||
- LOKI_TSDB_FROM_DATE
|
||||
deploy:
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
|
||||
+29
-1
@@ -56,12 +56,26 @@ schema_config:
|
||||
index:
|
||||
prefix: index_
|
||||
period: 24h
|
||||
{{ if env "LOKI_TSDB_FROM_DATE" }}
|
||||
- from: {{ env "LOKI_TSDB_FROM_DATE" }}
|
||||
store: tsdb
|
||||
object_store: filesystem
|
||||
schema: v13
|
||||
index:
|
||||
prefix: index_
|
||||
period: 24h
|
||||
{{ end }}
|
||||
|
||||
storage_config:
|
||||
boltdb_shipper:
|
||||
active_index_directory: /loki/boltdb-shipper-active
|
||||
cache_location: /loki/boltdb-shipper-cache
|
||||
cache_ttl: 24h # Can be increased for faster performance over longer query periods, uses more disk space
|
||||
{{ if env "LOKI_TSDB_FROM_DATE" }}
|
||||
tsdb_shipper:
|
||||
active_index_directory: /loki/tsdb-index
|
||||
cache_location: /loki/tsdb-cache
|
||||
{{ end }}
|
||||
filesystem:
|
||||
directory: /loki/chunks
|
||||
{{ end }}
|
||||
@@ -74,6 +88,15 @@ schema_config:
|
||||
index:
|
||||
prefix: index_
|
||||
period: 24h
|
||||
{{ if env "LOKI_TSDB_FROM_DATE" }}
|
||||
- from: {{ env "LOKI_TSDB_FROM_DATE" }}
|
||||
store: tsdb
|
||||
object_store: aws
|
||||
schema: v13
|
||||
index:
|
||||
prefix: index_
|
||||
period: 24h
|
||||
{{ end }}
|
||||
|
||||
storage_config:
|
||||
boltdb_shipper:
|
||||
@@ -81,6 +104,11 @@ storage_config:
|
||||
cache_location: /loki/index_cache
|
||||
resync_interval: 5s
|
||||
shared_store: aws
|
||||
{{ if env "LOKI_TSDB_FROM_DATE" }}
|
||||
tsdb_shipper:
|
||||
active_index_directory: /loki/tsdb-index
|
||||
cache_location: /loki/tsdb-cache
|
||||
{{ end }}
|
||||
|
||||
aws:
|
||||
endpoint: {{ env "LOKI_AWS_ENDPOINT" }}
|
||||
@@ -99,7 +127,7 @@ storage_config:
|
||||
|
||||
|
||||
compactor:
|
||||
working_directory: /loki/boltdb-shipper-compactor
|
||||
working_directory: /loki/compactor
|
||||
compaction_interval: 10m
|
||||
retention_enabled: true
|
||||
retention_delete_delay: 2h
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
- opt-in migration of Loki's index store from deprecated boltdb-shipper to TSDB via LOKI_TSDB_FROM_DATE
|
||||
Reference in New Issue
Block a user