Files
logstream/docker-compose.yml
T
cedricandClaude Opus 5.5 328384032b Add CSV export of the logs matching the current filters
- GET /api/export.csv streams every stored log matching the filters
  (newest first, up to EXPORT_MAX rows, 100000 by default) straight from
  VictoriaLogs, with dates in the time zone chosen in Settings.
- Export button with two variants: CSV (comma, UTF-8) and CSV for Excel
  (semicolon + BOM, formula injection neutralized).
- Store.QueryStream streams query results without buffering them.
- Mobile: filter bar keeps two selects per row, count next to Export.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 16:26:40 +02:00

43 lines
1.4 KiB
YAML

services:
logstream:
build: .
container_name: logstream
restart: unless-stopped
depends_on:
- victorialogs
ports:
- "${SYSLOG_PORT:-514}:5514/udp"
- "${SYSLOG_PORT:-514}:5514/tcp"
- "${HTTP_PORT:-8080}:8080"
environment:
VLOGS_URL: http://victorialogs:9428
TZ: ${TZ:-Europe/Paris}
AUTH_USER: ${AUTH_USER:-} # leave empty to disable authentication
AUTH_PASS: ${AUTH_PASS:-}
RDNS: ${RDNS:-on} # replace IP hosts with their DNS name (PTR)
DNS_SERVER: ${DNS_SERVER:-} # e.g. 192.168.1.1 to query your LAN DNS; empty = system resolver
ALLOW_PURGE: ${ALLOW_PURGE:-true}
EXPORT_MAX: ${EXPORT_MAX:-100000}
volumes:
- logstream-data:/data # tags.json
victorialogs:
# Pin a specific version in production (see hub.docker.com/r/victoriametrics/victoria-logs/tags)
image: victoriametrics/victoria-logs:latest
container_name: logstream-victorialogs
restart: unless-stopped
command:
- -storageDataPath=/vlogs
- -retentionPeriod=${RETENTION:-30d}
- -httpListenAddr=:9428
- -delete.enable # required by "Delete all logs" in Settings
volumes:
- vlogs-data:/vlogs
ports:
# VictoriaLogs debug UI (http://localhost:9428/select/vmui), localhost only
- "127.0.0.1:9428:9428"
volumes:
logstream-data:
vlogs-data: