-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy path.env.example
More file actions
193 lines (159 loc) · 6.18 KB
/
Copy path.env.example
File metadata and controls
193 lines (159 loc) · 6.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
# Environment
NODE_ENV=development
# Database (non-standard port to avoid conflicts)
DATABASE_URL=postgresql://postgres:postgres@localhost:5433/logarr
# Redis (non-standard port to avoid conflicts)
REDIS_URL=redis://localhost:6380
# Backend
BACKEND_PORT=4001
CORS_ORIGIN=http://localhost:3001
# Frontend
NEXT_PUBLIC_API_URL=http://localhost:4001/api
NEXT_PUBLIC_WS_URL=http://localhost:4001
FRONTEND_PORT=3001
# AI Providers (optional - auto-configured on startup)
# Set any of these API keys and the provider will be automatically configured
# on first startup. The first provider with a key becomes the default.
ANTHROPIC_API_KEY=
OPENAI_API_KEY=
GOOGLE_AI_API_KEY=
# Local AI (Ollama/LM Studio) - set base URL to auto-configure
# OLLAMA_BASE_URL=http://localhost:11434
# LMSTUDIO_BASE_URL=http://localhost:1234/v1
# Historical Log Backfill (default: true)
# Set to false to skip historical log processing on first startup.
# When false, only new log entries will be captured going forward.
BACKFILL=true
# Log Retention (optional - defaults shown)
# Set LOG_CLEANUP_ENABLED=false to disable automatic cleanup
LOG_CLEANUP_ENABLED=true
LOG_RETENTION_DAYS=30 # Days to keep info/debug logs
LOG_RETENTION_ERROR_DAYS=90 # Days to keep error/warn logs (3x longer for debugging)
LOG_CLEANUP_CRON=0 3 * * * # Cron schedule (default: 3 AM daily)
LOG_CLEANUP_BATCH_SIZE=10000 # Rows deleted per batch (tune for your hardware)
# =============================================================================
# MEDIA SERVERS (optional - auto-configured on startup)
# Set URL + API key for each server you want to monitor.
# Servers will be auto-added on first startup if these are set.
# =============================================================================
# Jellyfin
JELLYFIN_URL=
JELLYFIN_API_KEY=
# Plex (use X-Plex-Token)
PLEX_URL=
PLEX_TOKEN=
# Emby
EMBY_URL=
EMBY_API_KEY=
# Sonarr
SONARR_URL=
SONARR_API_KEY=
# Radarr
RADARR_URL=
RADARR_API_KEY=
# Prowlarr
PROWLARR_URL=
PROWLARR_API_KEY=
# Whisparr
WHISPARR_URL=
WHISPARR_API_KEY=
# =============================================================================
# SECURITY & AUTHENTICATION
# =============================================================================
# JWT Secret (auto-generated on first startup if not set)
# DO NOT change this after setup or all sessions will be invalid!
# JWT_SECRET=your-random-64-character-string-here
# Session settings (JWT expiration, idle timeout) are configured via the
# Security tab in the Settings UI. These values are stored in the database.
# Admin Password Reset (emergency reset if you forget your password)
# Set to "true" and restart the container to reset the admin account.
# This allows you to re-run the setup flow at /setup.
# All other data (logs, issues, settings) is preserved.
# IMPORTANT: Remove this env var after resetting to prevent repeated resets!
# ADMIN_PASSWORD_RESET=true
# =============================================================================
# HEALTH CHECK (optional)
# =============================================================================
# Startup grace period for health checks (default: 60 seconds)
# Allows file ingestion time to initialize before health checks fail.
# Increase this if volumes take longer to mount during docker compose restart.
HEALTH_CHECK_STARTUP_GRACE_SECONDS=60
# =============================================================================
# LOG FILE PATHS (optional - for file-based log ingestion)
# =============================================================================
# These are HOST paths that get mounted into Docker containers.
# In the Sources UI, configure the CONTAINER paths: /plex-logs, /jellyfin-logs, etc.
#
# Plex examples:
# Windows: C:/Users/YourName/AppData/Local/Plex Media Server/Logs
# Linux: /var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Logs
# Docker: /path/to/plex/config/Library/Application Support/Plex Media Server/Logs
PLEX_LOGS_PATH=
# Jellyfin examples:
# Windows: C:/ProgramData/Jellyfin/Server/log
# Linux: /var/lib/jellyfin/log
# Docker: /path/to/jellyfin/config/log
JELLYFIN_LOGS_PATH=
# Emby examples:
# Windows: C:/ProgramData/Emby-Server/logs
# Linux: /var/lib/emby/logs
# Docker: /path/to/emby/config/logs
EMBY_LOGS_PATH=
# Sonarr examples (container path: /sonarr-logs):
# Windows: C:/ProgramData/Sonarr/logs
# Linux: ~/.config/Sonarr/logs
# Docker: /path/to/sonarr/config/logs
SONARR_LOGS_PATH=
# Radarr examples (container path: /radarr-logs):
# Windows: C:/ProgramData/Radarr/logs
# Linux: ~/.config/Radarr/logs
# Docker: /path/to/radarr/config/logs
RADARR_LOGS_PATH=
# Prowlarr examples (container path: /prowlarr-logs):
# Windows: C:/ProgramData/Prowlarr/logs
# Linux: ~/.config/Prowlarr/logs
# Docker: /path/to/prowlarr/config/logs
PROWLARR_LOGS_PATH=
# Whisparr examples (container path: /whisp-logs):
# Windows: C:/ProgramData/Whisparr/logs
# Linux: ~/.config/Whisparr/logs
# Docker: /path/to/whisparr/config/logs
WHISPARR_LOGS_PATH=
# =============================================================================
# MULTIPLE INSTANCES (optional - for multiple servers of the same type)
# =============================================================================
# Use numbered suffixes (_1, _2, _3) to run multiple instances of the same
# server type (e.g., Movies vs Shorts, 1080p vs 4K). Each maps to a container
# path like /radarr-logs-1, /radarr-logs-2, /radarr-logs-3, etc.
#
# Example: Two Radarr instances (Movies and Shorts)
# RADARR_LOGS_PATH=/path/to/radarr-movies/logs
# RADARR_LOGS_PATH_1=/path/to/radarr-shorts/logs
#
# In the Sources UI, add each server separately using:
# - Primary: /radarr-logs
# - Instance 1: /radarr-logs-1
# - Instance 2: /radarr-logs-2
# - Instance 3: /radarr-logs-3
#
PLEX_LOGS_PATH_1=
PLEX_LOGS_PATH_2=
PLEX_LOGS_PATH_3=
JELLYFIN_LOGS_PATH_1=
JELLYFIN_LOGS_PATH_2=
JELLYFIN_LOGS_PATH_3=
EMBY_LOGS_PATH_1=
EMBY_LOGS_PATH_2=
EMBY_LOGS_PATH_3=
SONARR_LOGS_PATH_1=
SONARR_LOGS_PATH_2=
SONARR_LOGS_PATH_3=
RADARR_LOGS_PATH_1=
RADARR_LOGS_PATH_2=
RADARR_LOGS_PATH_3=
PROWLARR_LOGS_PATH_1=
PROWLARR_LOGS_PATH_2=
PROWLARR_LOGS_PATH_3=
WHISPARR_LOGS_PATH_1=
WHISPARR_LOGS_PATH_2=
WHISPARR_LOGS_PATH_3=