I’m trying to capture logs from all of my docker containers with Grafana+Loki
by using the Docker Driver Plugin and by changing the default Docker logging driver
When I choose Loki as the Data source in Grafana and enters Loki:3100
as the URL in the settings for the Data source and press Save & Test, I get the message Data source connected and labels found.
but no logs is found when I write {container_name=mycontainer}
in the Explorer page.
docker-compose.yml
version: '3.8'
services:
grafana:
image: grafana/grafana:latest
container_name: grafana
volumes:
- storage:/var/lib/grafana
expose:
- 3000
networks:
- main
restart: unless-stopped
depends_on:
- loki
loki:
image: grafana/loki:latest
container_name: loki
volumes:
- loki:/etc/loki/
expose:
- 3100
networks:
- main
restart: unless-stopped
volumes:
storage:
loki:
networks:
main:
external: true
daemon.js
{
"debug" : true,
"log-driver": "loki",
"log-opts": {
"loki-url": "http://loki:3100/loki/api/v1/push"
}
}
local-config.yml for loki
auth_enabled: false
server:
http_listen_port: 3100
ingester:
lifecycler:
address: 0.0.0.0
ring:
kvstore:
store: inmemory
replication_factor: 1
final_sleep: 0s
chunk_idle_period: 1h # Any chunk not receiving new logs in this time will be flushed
max_chunk_age: 1h # All chunks will be flushed when they hit this age, default is 1h
chunk_target_size: 1048576 # Loki will attempt to build chunks up to 1.5MB, flushing first if chunk_idle_period or max_chunk_age is reached first
chunk_retain_period: 30s # Must be greater than index read cache TTL if using an index cache (Default index read cache TTL is 5m)
max_transfer_retries: 0 # Chunk transfers disabled
schema_config:
configs:
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 24h
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
shared_store: filesystem
filesystem:
directory: /loki/chunks
compactor:
working_directory: /loki/boltdb-shipper-compactor
shared_store: filesystem
limits_config:
reject_old_samples: true
reject_old_samples_max_age: 168h
chunk_store_config:
max_look_back_period: 0s
table_manager:
retention_deletes_enabled: false
retention_period: 0s
ruler:
storage:
type: local
local:
directory: /loki/rules
rule_path: /loki/rules-temp
alertmanager_url: http://localhost:9093
ring:
kvstore:
store: inmemory
enable_api: true