diff --git a/Docker/Docker-Compose/Monitioring/docker-compose.yml b/Docker/Docker-Compose/Monitioring/docker-compose.yml index c1ce243..ca09dad 100644 --- a/Docker/Docker-Compose/Monitioring/docker-compose.yml +++ b/Docker/Docker-Compose/Monitioring/docker-compose.yml @@ -30,3 +30,26 @@ services: - 8225:8125/udp - 8226:8126 restart: unless-stopped + +############################################## +# Loki +# Docs: https://grafana.com/docs/loki/latest/ +# GitHub: https://github.com/grafana/loki +# Dokcer Hub: https://hub.docker.com/r/grafana/loki +############################################## + loki: + image: grafana/loki:3.3.2 + restart: unless-stopped + networks: + - monitoring + ports: + - "3100:3100" + volumes: + - ${DATADIR}/Loki/Config/loki-config.yaml:/etc/loki/loki-config.yaml + - ${DATADIR}/Loki/Data:/data/loki + command: -config.file=/etc/loki/loki-config.yaml + logging: + driver: loki + options: + loki-url: "http://localhost:3100/loki/api/v1/push" + max-size: "200m" diff --git a/Docker/Docker-Compose/Monitioring/loki-config.yml b/Docker/Docker-Compose/Monitioring/loki-config.yml new file mode 100644 index 0000000..5ea3266 --- /dev/null +++ b/Docker/Docker-Compose/Monitioring/loki-config.yml @@ -0,0 +1,67 @@ +# (default configuration) +auth_enabled: false + +server: + http_listen_port: 3100 + +ingester: + lifecycler: + address: 127.0.0.1 + 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 + ingestion_burst_size_mb: 16 + ingestion_rate_mb: 16 + +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: localhost + ring: + kvstore: + store: inmemory + enable_api: true