perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = "UTF-8",
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
2026/09/21 11:06:12 main.go:334: [INFO] felhom-controller 0.260.0 starting (customer: demo-hp, domain: enkisfelhom.hu)
2026/09/21 11:06:12 settings.go:693: [INFO] [settings] Loaded settings from /opt/docker/felhom-controller/data/settings.json
2026/09/21 11:06:12 settings.go:1611: [DEBUG] [settings] AutoDiscoverStoragePaths discovered=[] fallback="" existing=1
2026/09/21 11:06:12 main.go:360: [INFO] Encryption key loaded from /opt/docker/felhom-controller/data/encryption.key
2026/09/21 11:06:12 manager.go:283: [INFO] [stacks] Using compose command: docker compose
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=false composePath=/opt/docker/stacks/n8n/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=false composePath=/opt/docker/stacks/navidrome/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=false composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=false composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=false composePath=/opt/docker/stacks/privatebin/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=false composePath=/opt/docker/stacks/romm/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=true composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=false composePath=/opt/docker/stacks/vikunja/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=false composePath=/opt/docker/stacks/wishlist/docker-compose.yml
2026/09/21 11:06:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
2026/09/21 11:06:12 manager.go:1620: [DEBUG] [stacks] getCatalogTemplateSlugs: found 53 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
2026/09/21 11:06:12 manager.go:630: [DEBUG] [stacks] ScanStacks: catalog has 53 template slugs for orphan detection
2026/09/21 11:06:12 manager.go:661: [INFO] [stacks] ScanStacks complete: 55 stacks found (1 deployed, 54 available)
2026/09/21 11:06:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:12 deploy.go:1086: [DEBUG] [stacks] InjectMissingFields: checking 1 stacks
2026/09/21 11:06:12 deploy.go:1108: [DEBUG] [stacks] InjectMissingFields: checking stack uptime-kuma — 2 deploy fields, 2 existing env vars
2026/09/21 11:06:12 deploy.go:1171: [INFO] [stacks] InjectMissingFields: processed 1 stacks
2026/09/21 11:06:12 manager.go:422: [DEBUG] [stacks] MigrateEncryption: checking 1 deployed stacks for plaintext sensitive values
2026/09/21 11:06:12 manager.go:466: [INFO] [stacks] Encryption migration: no stacks needed migration
2026/09/21 11:06:12 desiredstate.go:137: [INFO] [stacks] desired-state backfill: 0 app(s) recorded as running, 0 left unrecorded (state ambiguous — legacy boot behaviour retained)
2026/09/21 11:06:12 installed.go:525: [INFO] [stacks] installed-images backfill: 0 app(s) recorded, 1 already had a record, 0 left unrecorded (could not be observed completely — unknown, which renders nothing)
2026/09/21 11:06:12 pin.go:289: [INFO] [stacks] pin adoption: 0 pinned, 1 already pinned, 0 left unpinned (0 not completely observed, 0 running something the template no longer offers)
2026/09/21 11:06:12 sync.go:117: [INFO] [sync] Starting catalog sync (repo: https://gitea.dooplex.hu/admin/app-catalog-felhom.eu.git, interval: 15m0s)
2026/09/21 11:06:12 sync.go:208: [INFO] [sync] Starting catalog sync
2026/09/21 11:06:12 sync.go:296: [INFO] [sync] Pulling latest from https://gitea.dooplex.hu/admin/app-catalog-felhom.eu.git (branch: main)
2026/09/21 11:06:12 sync.go:298: [DEBUG] [sync] git fetch --depth 1 origin main in /opt/docker/felhom-controller/data/catalog-cache
2026/09/21 11:06:12 update.go:904: [WARN] [stacks] update recovery: uptime-kuma was interrupted in pulling (started 2026-09-21T11:04:52Z) — nothing had run; putting the pin back
2026/09/21 11:06:12 sync.go:592: [DEBUG] [sync] Running: git fetch --depth 1 origin main
2026/09/21 11:06:12 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/uptime-kuma — 2 env vars, 0 encrypted, 0 sensitive fields
2026/09/21 11:06:12 [INFO] [stacks] SaveAppConfig: saved config for uptime-kuma
2026/09/21 11:06:12 pin.go:93: [INFO] [stacks] pin uptime-kuma: uptime-kuma=louislam/uptime-kuma:2.4.0
2026/09/21 11:06:12 update.go:705: [INFO] [stacks] update uptime-kuma: pin and definition PUT BACK to the pre-update version (uptime-kuma=louislam/uptime-kuma:2.4.0)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] CPUCollector.Start: sampleRate=5s
2026/09/21 11:06:12 main.go:511: [INFO] Metrics store opened at /opt/docker/felhom-controller/data/metrics.db
2026/09/21 11:06:12 main.go:523: [INFO] Metrics collector started (60s interval)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:06:12 restore_record_wiring.go:35: [INFO] [backup] restore record wired: /opt/docker/felhom-controller/data/restore-status.json (interrupted at startup: false)
2026/09/21 11:06:12 notifier.go:75: [INFO] Notifier disabled (hub not configured)
2026/09/21 11:06:12 main.go:642: [INFO] [mailrelay] app-email shim unavailable (no hub configured or disabled in config)
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: status-refresh (every 10s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="status-refresh" interval=10s totalJobs=1
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: stack-scan (every 2m0s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="stack-scan" interval=2m0s totalJobs=2
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: health-probes (every 10s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="health-probes" interval=10s totalJobs=3
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: system-health (every 5m0s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="system-health" interval=5m0s totalJobs=4
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: deadapp-check (every 30s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="deadapp-check" interval=30s totalJobs=5
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: ring-spill (every 30s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="ring-spill" interval=30s totalJobs=6
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job db-dump scheduled for 2026-09-22 02:30 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="db-dump" schedule="02:30" nextRun=2026-09-22T02:30:00+02:00 totalJobs=7
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: offsite-credential-retry (every 5m0s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="offsite-credential-retry" interval=5m0s totalJobs=8
2026/09/21 11:06:12 scheduler.go:102: [INFO] [scheduler] Registered periodic job: backup-cache (every 5m0s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] periodic job registered: name="backup-cache" interval=5m0s totalJobs=9
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job tier2-backup scheduled for 2026-09-22 03:30 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="tier2-backup" schedule="03:30" nextRun=2026-09-22T03:30:00+02:00 totalJobs=10
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job offbox-backup scheduled for 2026-09-22 04:15 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offbox-backup" schedule="04:15" nextRun=2026-09-22T04:15:00+02:00 totalJobs=11
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job offsite-abandon-sweep scheduled for 2026-09-22 05:10 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offsite-abandon-sweep" schedule="05:10" nextRun=2026-09-22T05:10:00+02:00 totalJobs=12
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job offsite-integrity scheduled for 2026-09-22 06:00 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offsite-integrity" schedule="06:00" nextRun=2026-09-22T06:00:00+02:00 totalJobs=13
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job offsite-proof scheduled for 2026-09-22 05:30 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="offsite-proof" schedule="05:30" nextRun=2026-09-22T05:30:00+02:00 totalJobs=14
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job metrics-prune scheduled for 2026-09-22 04:00 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="metrics-prune" schedule="04:00" nextRun=2026-09-22T04:00:00+02:00 totalJobs=15
2026/09/21 11:06:12 scheduler.go:132: [INFO] [scheduler] Daily job fill-watch scheduled for 2026-09-22 03:30 CEST
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job registered: name="fill-watch" schedule="03:30" nextRun=2026-09-22T03:30:00+02:00 totalJobs=16
2026/09/21 11:06:12 selftest.go:50: [INFO] ========== Startup Self-Test ==========
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈3844MB avail≈22054MB
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=26154728 → total=25898MB avail=22054MB used=3844MB (14.8%)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.7GB avail=58.2GB (9.8%)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.2GB (1.8%)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="1.32 1.05 0.94 11/1204 124" → 1m=1.32 5m=1.05 15m=0.94
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 60.6°C (hwmon2)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] GetInfo done in 66ms — mem=3844MB/25898MB (14.8%), rootDisk=6.7GB/68.4GB (9.8%), load=1.32/1.05/0.94, temp=60.6°C (hwmon2), cpu=0.0%
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Docker socket: reachable (v29.8.0)
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Stacks directory: /opt/docker/stacks
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Data directory: /opt/docker/felhom-controller/data (writable)
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] System data path: /mnt/sys_drive
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Storage paths: 1 connected, 0 disconnected
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Git catalog: 53 app definitions found
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Hub connectivity: hub disabled, skipped
2026/09/21 11:06:12 selftest.go:68: [INFO] [PASS] Metrics DB: 4.5 MB
2026/09/21 11:06:12 selftest.go:70: [INFO] ========================================
2026/09/21 11:06:12 selftest.go:71: [INFO] Self-test complete: 8 passed, 0 warnings, 0 failed
2026/09/21 11:06:12 scheduler.go:206: [INFO] [scheduler] Starting scheduler with 16 jobs
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] scheduler started: periodic=8 daily=8
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job offsite-abandon-sweep: next run at 2026-09-22 05:10:00 CEST (waiting 16h3m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job db-dump: next run at 2026-09-22 02:30:00 CEST (waiting 13h23m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job offsite-proof: next run at 2026-09-22 05:30:00 CEST (waiting 16h23m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job offsite-integrity: next run at 2026-09-22 06:00:00 CEST (waiting 16h53m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job tier2-backup: next run at 2026-09-22 03:30:00 CEST (waiting 14h23m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job offbox-backup: next run at 2026-09-22 04:15:00 CEST (waiting 15h8m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job metrics-prune: next run at 2026-09-22 04:00:00 CEST (waiting 14h53m48s)
2026/09/21 11:06:12 scheduler.go:67: [DEBUG] [scheduler] daily job fill-watch: next run at 2026-09-22 03:30:00 CEST (waiting 14h23m48s)
2026/09/21 11:06:12 server.go:250: [DEBUG] [web] NewServer: initializing web server v0.260.0
2026/09/21 11:06:12 server.go:251: [DEBUG] [web] NewServer: backup=true scheduler=true alertMgr=true notifier=true updater=false
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:06:12 backup.go:465: [DEBUG] groupStacksByDrive: /mnt/sys_drive → [uptime-kuma]
2026/09/21 11:06:12 backup.go:1107: [INFO] [backup] Found 0 DB dump files across drives
2026/09/21 11:06:12 dbdump.go:128: [DEBUG] DiscoverDatabases: running docker ps to find database containers
2026/09/21 11:06:12 sync.go:212: [ERROR] [sync] Catalog sync failed: git fetch: git fetch --depth 1 origin main: exit status 128
stderr: fatal: unable to access 'https://gitea.dooplex.hu/admin/app-catalog-felhom.eu.git/': Could not resolve host: gitea.dooplex.hu
2026/09/21 11:06:12 sync.go:122: [INFO] [sync] Initial sync: Git hiba: git fetch: git fetch --depth 1 origin main: exit status 128
stderr: fatal: unable to access 'https://gitea.dooplex.hu/admin/app-catalog-felhom.eu.git/': Could not resolve host: gitea.dooplex.hu
2026/09/21 11:06:12 dbdump.go:147: [DEBUG] DiscoverDatabases: docker ps output: 7c794623b894	felhom-controller		gitea.dooplex.hu/admin/felhom-controller:0.260.0
e87c990f2026	uptime-kuma	uptime-kuma	louislam/uptime-kuma:2.4.0
6d206504c99e	filebrowser	filebrowser	gtstef/filebrowser:1.3.3-stable
2515331bc19e	traefik	traefik	traefik:v3.6.7
2026/09/21 11:06:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.260.0, not a database)
2026/09/21 11:06:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container uptime-kuma (image=louislam/uptime-kuma:2.4.0, not a database)
2026/09/21 11:06:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
2026/09/21 11:06:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
2026/09/21 11:06:12 dbdump.go:203: [DEBUG] DiscoverDatabases: found 0 database(s), skipped 4 non-DB container(s)
2026/09/21 11:06:12 dbdump.go:206: [INFO] [backup] Discovered 0 databases
2026/09/21 11:06:12 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/uptime-kuma/docker-compose.yml
2026/09/21 11:06:12 [INFO] [backup] Discovered app data: 1 apps
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=6.7 GB avail=58.2GB (9.8%)
2026/09/21 11:06:12 recovery_unit.go:224: [INFO] [backup] Recovery unit captured for uptime-kuma → /mnt/sys_drive/felhom-data/backups/primary/uptime-kuma (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)
2026/09/21 11:06:12 backup.go:1177: [INFO] [backup] Backup status cache refreshed
2026/09/21 11:06:12 server.go:324: [DEBUG] [web] loadTemplates: lang=hu loaded 81 templates, 1877 markers expanded in 28.728841ms
2026/09/21 11:06:12 server.go:324: [DEBUG] [web] loadTemplates: lang=en loaded 81 templates, 1877 markers expanded in 19.600884ms
2026/09/21 11:06:12 server.go:270: [INFO] [web] Auth: using password from settings.json
2026/09/21 11:06:12 server.go:811: [DEBUG] [web] CatchAllMiddleware: controller host=felhom.enkisfelhom.hu
2026/09/21 11:06:12 main.go:1856: [INFO] Web UI listening on :8080
2026/09/21 11:06:12 manager.go:258: [DEBUG] [integrations] ReapplyConfigForTarget: target=filebrowser integrations=0
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈3874MB avail≈22024MB
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=26119944 → total=25898MB avail=22024MB used=3874MB (15.0%)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.7GB avail=58.2GB (9.8%)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.2GB (1.8%)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="1.32 1.05 0.94 6/1204 179" → 1m=1.32 5m=1.05 15m=0.94
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 60.6°C (hwmon2)
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] GetInfo done in 79ms — mem=3874MB/25898MB (15.0%), rootDisk=6.7GB/68.4GB (9.8%), load=1.32/1.05/0.94, temp=60.6°C (hwmon2), cpu=0.0%
2026/09/21 11:06:12 healthcheck.go:86: [DEBUG] [monitor] Raw values: disk=9.8%, hdd=1.8% (configured=true), mem=15.0% (3874MB/25898MB), cpu=0.0%, temp=60.6°C (hwmon2)
2026/09/21 11:06:12 healthcheck.go:118: [DEBUG] [monitor] SSD disk: OK (10%)
2026/09/21 11:06:12 healthcheck.go:151: [DEBUG] [monitor] Memory: OK (15%)
2026/09/21 11:06:12 healthcheck.go:187: [DEBUG] [monitor] Temperature: OK (61°C)
2026/09/21 11:06:12 infra.go:228: [INFO] [infra] connected felhom-controller to traefik-public
2026/09/21 11:06:12 infra.go:67: [INFO] [infra] cloudflared skipped — no cf_tunnel_token configured (LAN-only node)
2026/09/21 11:06:12 healthcheck.go:201: [DEBUG] [monitor] Docker daemon: OK
2026/09/21 11:06:12 healthcheck.go:209: [DEBUG] [monitor] Checking 1 protected containers: [traefik]
2026/09/21 11:06:12 healthcheck.go:219: [DEBUG] [monitor] All protected containers running
2026/09/21 11:06:12 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd" total=937.8 GB used=17.0 GB avail=873.2GB (1.8%)
2026/09/21 11:06:12 healthcheck.go:238: [INFO] [monitor] Health check: status=ok
2026/09/21 11:06:12 healthcheck.go:242: [DEBUG] [monitor] Final status: ok (issues=0, warnings=0, info=4)
2026/09/21 11:06:12 handlers.go:3399: [INFO] [web] FileBrowser sync — no config/compose change, ensured running without recreate (1 storage path(s))
2026/09/21 11:06:17 info.go:13: [DEBUG] [system] CPUCollector: first sample — cpu=16.8% (idle=3282 total=3943)
2026/09/21 11:06:17 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:22 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:22 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:06:22 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:06:22 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 1 targets (0 skipped not due, 0 skipped no container)
2026/09/21 11:06:22 healthprobe.go:153: [DEBUG] Health probe uptime-kuma: HTTP GET :3001/ → 302 (4ms)
2026/09/21 11:06:22 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:22 healthprobe.go:133: [INFO] Health probes: 1 ok (of 1 probed)
2026/09/21 11:06:27 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:27 main.go:2273: [INFO] [bootrecon] boot window: fleet settled after 10s (3 identical samples 5s apart) — sweeping
2026/09/21 11:06:27 bootrecon.go:255: [INFO] [bootrecon] Boot reconciliation: no boot-orphaned apps (nothing to start)
2026/09/21 11:06:32 auth.go:154: [DEBUG] [web] login attempt from 172.18.0.3:56160 (X-Forwarded-For: 172.18.0.1)
2026/09/21 11:06:32 auth.go:202: [DEBUG] [web] login successful from 172.18.0.1, creating session
2026/09/21 11:06:32 auth.go:268: [DEBUG] [web] session created, expires=2026-09-28T11:06:32Z, active_sessions=1
2026/09/21 11:06:32 auth.go:222: [INFO] [web] Login from 172.18.0.3:56160
2026/09/21 11:06:32 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:06:32 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 10s ago, effective interval 5m0s, healthy=true
2026/09/21 11:06:32 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:06:32 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:06:32 auth.go:142: [DEBUG] [web] auth: valid session for GET /stacks
2026/09/21 11:06:32 server.go:542: [DEBUG] [web] ServeHTTP: GET /stacks from 172.18.0.3:56160
2026/09/21 11:06:32 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:42 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:06:42 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:06:42 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:06:42 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:06:42 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 20s ago, effective interval 5m0s, healthy=true
2026/09/21 11:06:42 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:06:42 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:52 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:06:52 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:06:52 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:06:52 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:06:52 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:06:52 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 30s ago, effective interval 5m0s, healthy=true
2026/09/21 11:06:52 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:02 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:07:02 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 40s ago, effective interval 5m0s, healthy=true
2026/09/21 11:07:02 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:02 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:07:02 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4073MB avail≈21825MB
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25883456 → total=25898MB avail=21825MB used=4073MB (15.7%)
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.7GB avail=58.2GB (9.8%)
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.2GB (1.8%)
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="0.94 0.98 0.92 2/1190 371" → 1m=0.94 5m=0.98 15m=0.92
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 53.8°C (hwmon2)
2026/09/21 11:07:12 info.go:13: [DEBUG] [system] GetInfo done in 62ms — mem=4073MB/25898MB (15.7%), rootDisk=6.7GB/68.4GB (9.8%), load=0.94/0.98/0.92, temp=53.8°C (hwmon2), cpu=15.9%
2026/09/21 11:07:12 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:07:12 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:07:12 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:07:12 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 50s ago, effective interval 5m0s, healthy=true
2026/09/21 11:07:12 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:12 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:07:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:07:22 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:07:22 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:07:22 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:07:22 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m0s ago, effective interval 5m0s, healthy=true
2026/09/21 11:07:22 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:32 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:07:32 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m10s ago, effective interval 5m0s, healthy=true
2026/09/21 11:07:32 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:32 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:07:32 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:07:42 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=6.7 GB avail=58.2GB (9.8%)
2026/09/21 11:07:42 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd" total=937.8 GB used=17.0 GB avail=873.2GB (1.8%)
2026/09/21 11:07:42 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=6.7 GB avail=58.2GB (9.8%)
2026/09/21 11:07:42 fillwatch.go:256: [INFO] [fillwatch] checked 3 filesystem(s), 0 unreadable/skipped, 0 notification(s); bands: all ok
2026/09/21 11:07:42 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:07:42 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:07:42 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:07:42 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m20s ago, effective interval 5m0s, healthy=true
2026/09/21 11:07:42 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:42 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:07:42 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:07:52 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:07:52 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:07:52 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m30s ago, effective interval 5m0s, healthy=true
2026/09/21 11:07:52 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:07:52 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:02 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:08:02 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:08:02 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m40s ago, effective interval 5m0s, healthy=true
2026/09/21 11:08:02 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:08:02 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:11 auth.go:142: [DEBUG] [web] auth: valid session for GET /apps/uptime-kuma
2026/09/21 11:08:11 server.go:542: [DEBUG] [web] ServeHTTP: GET /apps/uptime-kuma from 172.18.0.3:56160
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈3984MB avail≈21914MB
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25988332 → total=25898MB avail=21914MB used=3984MB (15.4%)
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.7GB avail=58.2GB (9.8%)
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.2GB (1.8%)
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="0.75 0.92 0.91 7/1193 488" → 1m=0.75 5m=0.92 15m=0.91
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 54.6°C (hwmon2)
2026/09/21 11:08:12 info.go:13: [DEBUG] [system] GetInfo done in 72ms — mem=3984MB/25898MB (15.4%), rootDisk=6.7GB/68.4GB (9.8%), load=0.75/0.92/0.91, temp=54.6°C (hwmon2), cpu=8.7%
2026/09/21 11:08:12 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:08:12 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:08:12 scheduler.go:346: [INFO] [scheduler] Running job: stack-scan
2026/09/21 11:08:12 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:08:12 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m50s ago, effective interval 5m0s, healthy=true
2026/09/21 11:08:12 scheduler.go:67: [DEBUG] [scheduler] job stack-scan: execution starting
2026/09/21 11:08:12 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:08:12 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=false composePath=/opt/docker/stacks/n8n/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=false composePath=/opt/docker/stacks/navidrome/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=false composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=false composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=false composePath=/opt/docker/stacks/privatebin/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=false composePath=/opt/docker/stacks/romm/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=true composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=false composePath=/opt/docker/stacks/vikunja/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=false composePath=/opt/docker/stacks/wishlist/docker-compose.yml
2026/09/21 11:08:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
2026/09/21 11:08:12 manager.go:1620: [DEBUG] [stacks] getCatalogTemplateSlugs: found 53 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
2026/09/21 11:08:12 manager.go:630: [DEBUG] [stacks] ScanStacks: catalog has 53 template slugs for orphan detection
2026/09/21 11:08:12 manager.go:661: [INFO] [stacks] ScanStacks complete: 55 stacks found (1 deployed, 54 available)
2026/09/21 11:08:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:12 scheduler.go:363: [INFO] [scheduler] Job stack-scan completed (took 68ms)
2026/09/21 11:08:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:13 auth.go:142: [DEBUG] [web] auth: valid session for GET /apps/uptime-kuma
2026/09/21 11:08:13 server.go:542: [DEBUG] [web] ServeHTTP: GET /apps/uptime-kuma from 172.18.0.3:56160
2026/09/21 11:08:16 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:08:16 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:08:22 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:08:22 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 2m0s ago, effective interval 5m0s, healthy=true
2026/09/21 11:08:22 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:08:22 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:08:22 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:32 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:08:32 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 2m10s ago, effective interval 5m0s, healthy=true
2026/09/21 11:08:32 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:08:32 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:08:32 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:42 auth.go:142: [DEBUG] [web] auth: valid session for POST /api/stacks/uptime-kuma/update
2026/09/21 11:08:42 router.go:81: [DEBUG] [api] POST /api/stacks/uptime-kuma/update (path=/stacks/uptime-kuma/update)
2026/09/21 11:08:42 router.go:582: [INFO] [api] update requested for stack: uptime-kuma
2026/09/21 11:08:42 router.go:81: [DEBUG] [api] actionStack: action=update name=uptime-kuma
2026/09/21 11:08:42 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4062MB avail≈21836MB
2026/09/21 11:08:42 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25896520 → total=25898MB avail=21836MB used=4062MB (15.7%)
2026/09/21 11:08:42 deploy.go:1232: [INFO] [stacks] Memory check: total=25898MB, reserved=384MB, usable=25514MB, committed_used=0MB, new_req=50MB, remaining=25464MB
2026/09/21 11:08:42 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=6.7 GB avail=58.2GB (9.8%)
2026/09/21 11:08:42 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4040MB avail≈21858MB
2026/09/21 11:08:42 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25922964 → total=25898MB avail=21858MB used=4040MB (15.6%)
2026/09/21 11:08:42 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:08:42 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:08:42 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:08:42 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:08:42 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:42 deploy.go:1232: [INFO] [stacks] Memory check: total=25898MB, reserved=384MB, usable=25514MB, committed_used=0MB, new_req=50MB, remaining=25464MB
2026/09/21 11:08:42 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 2m20s ago, effective interval 5m0s, healthy=true
2026/09/21 11:08:42 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:08:42 info.go:13: [DEBUG] [system] GetDiskUsage: path="/" total=68.4 GB used=6.7 GB avail=58.2GB (9.8%)
2026/09/21 11:08:42 update.go:429: [INFO] [stacks] update uptime-kuma: accepted — guarded update started
2026/09/21 11:08:42 update.go:858: [INFO] [stacks] update uptime-kuma: phase checking
2026/09/21 11:08:42 update_guard.go:224: [DEBUG] [backup] update precondition for uptime-kuma: no Tier-2 copy (nincs másodlagos fájlmásolat ehhez az alkalmazáshoz)
2026/09/21 11:08:42 update.go:544: [INFO] [stacks] update uptime-kuma: precondition met — Tier 1 (own recovery unit) copy from 2026-09-21T11:06:12Z (3m0s old, limit 24h0m0s)
2026/09/21 11:08:42 update.go:858: [INFO] [stacks] update uptime-kuma: phase safety-dump
2026/09/21 11:08:42 dbdump.go:128: [DEBUG] DiscoverDatabases: running docker ps to find database containers
2026/09/21 11:08:42 dbdump.go:147: [DEBUG] DiscoverDatabases: docker ps output: 7c794623b894	felhom-controller		gitea.dooplex.hu/admin/felhom-controller:0.260.0
e87c990f2026	uptime-kuma	uptime-kuma	louislam/uptime-kuma:2.4.0
6d206504c99e	filebrowser	filebrowser	gtstef/filebrowser:1.3.3-stable
2515331bc19e	traefik	traefik	traefik:v3.6.7
2026/09/21 11:08:42 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.260.0, not a database)
2026/09/21 11:08:42 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container uptime-kuma (image=louislam/uptime-kuma:2.4.0, not a database)
2026/09/21 11:08:42 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
2026/09/21 11:08:42 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
2026/09/21 11:08:42 dbdump.go:203: [DEBUG] DiscoverDatabases: found 0 database(s), skipped 4 non-DB container(s)
2026/09/21 11:08:42 dbdump.go:206: [INFO] [backup] Discovered 0 databases
2026/09/21 11:08:42 update_guard.go:452: [INFO] [backup] update safety dump for uptime-kuma: the app has no database — nothing to copy (no-op)
2026/09/21 11:08:42 update.go:576: [INFO] [stacks] update uptime-kuma: safety dump done (0 file(s)) []
2026/09/21 11:08:42 update.go:858: [INFO] [stacks] update uptime-kuma: phase pinning
2026/09/21 11:08:42 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/uptime-kuma — 2 env vars, 0 encrypted, 0 sensitive fields
2026/09/21 11:08:42 [INFO] [stacks] SaveAppConfig: saved config for uptime-kuma
2026/09/21 11:08:42 pin.go:362: [INFO] [stacks] update uptime-kuma: pin advanced to the catalog's current definition (uptime-kuma=louislam/uptime-kuma:2.5.0)
2026/09/21 11:08:42 update.go:858: [INFO] [stacks] update uptime-kuma: phase pulling
2026/09/21 11:08:42 manager.go:1384: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
2026/09/21 11:08:42 manager.go:1393: [DEBUG] Running: docker compose pull (in /opt/docker/stacks/uptime-kuma)
2026/09/21 11:08:47 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:08:47 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:08:52 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:08:52 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 2m30s ago, effective interval 5m0s, healthy=true
2026/09/21 11:08:52 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:08:52 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:08:52 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:56 manager.go:1413: [DEBUG] Command completed: docker compose pull (took 13.9s)
2026/09/21 11:08:56 update.go:858: [INFO] [stacks] update uptime-kuma: phase starting
2026/09/21 11:08:56 manager.go:1384: [DEBUG] Env vars for compose: [PATH, HOSTNAME, FELHOM_BOOTSTRAP_PATH, HOME, DOMAIN, SUBDOMAIN, DOMAIN, IMPORT_PATH] (8 app + 0 system)
2026/09/21 11:08:56 manager.go:1393: [DEBUG] Running: docker compose up -d --remove-orphans (in /opt/docker/stacks/uptime-kuma)
2026/09/21 11:08:56 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:08:56 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:08:57 manager.go:1413: [DEBUG] Command completed: docker compose up -d --remove-orphans (took 1.1s)
2026/09/21 11:08:57 update.go:858: [INFO] [stacks] update uptime-kuma: phase verifying
2026/09/21 11:08:57 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:08:58 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:08:58 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:09:02 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:09:02 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:09:02 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:02 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (0 skipped not due, 0 skipped no container)
2026/09/21 11:09:02 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:07 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:07 healthprobe.go:153: [DEBUG] Health probe uptime-kuma: HTTP GET :3001/ → 302 (3ms)
2026/09/21 11:09:07 update.go:652: [INFO] [stacks] update uptime-kuma: healthy after 10s (the app's health check passed)
2026/09/21 11:09:07 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:09:07 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:09:07 [DEBUG] [stacks] SaveAppConfig: saving /opt/docker/stacks/uptime-kuma — 2 env vars, 0 encrypted, 0 sensitive fields
2026/09/21 11:09:07 [INFO] [stacks] SaveAppConfig: saved config for uptime-kuma
2026/09/21 11:09:07 installed.go:408: [INFO] [stacks] installed-images uptime-kuma: recorded 1 service(s) (uptime-kuma=louislam/uptime-kuma:2.5.0 (sha256:a8610b3b4c38…))
2026/09/21 11:09:07 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:07 update.go:658: [INFO] [stacks] update uptime-kuma: DONE in 25s
2026/09/21 11:09:09 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:09:09 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:09:11 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:09:11 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:09:12 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:09:12 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈4093MB avail≈21805MB
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=25860040 → total=25898MB avail=21805MB used=4093MB (15.8%)
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.9GB avail=57.9GB (10.2%)
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.1GB (1.8%)
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="1.07 0.97 0.92 3/1195 889" → 1m=1.07 5m=0.97 15m=0.92
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 53.0°C (hwmon2)
2026/09/21 11:09:12 info.go:13: [DEBUG] [system] GetInfo done in 63ms — mem=4093MB/25898MB (15.8%), rootDisk=6.9GB/68.4GB (10.2%), load=1.07/0.97/0.92, temp=53.0°C (hwmon2), cpu=6.5%
2026/09/21 11:09:12 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:09:12 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:09:12 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:09:12 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:09:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:12 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 5s ago, effective interval 5m0s, healthy=true
2026/09/21 11:09:12 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:09:22 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:09:22 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:09:22 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:22 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 15s ago, effective interval 5m0s, healthy=true
2026/09/21 11:09:22 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:09:24 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:09:24 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:09:32 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:09:32 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 25s ago, effective interval 5m0s, healthy=true
2026/09/21 11:09:32 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:09:32 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:09:32 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:34 auth.go:142: [DEBUG] [web] auth: valid session for GET /apps/uptime-kuma
2026/09/21 11:09:34 server.go:542: [DEBUG] [web] ServeHTTP: GET /apps/uptime-kuma from 172.18.0.3:56160
2026/09/21 11:09:36 auth.go:142: [DEBUG] [web] auth: valid session for GET /apps/uptime-kuma
2026/09/21 11:09:36 server.go:542: [DEBUG] [web] ServeHTTP: GET /apps/uptime-kuma from 172.18.0.3:56160
2026/09/21 11:09:42 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:09:42 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:09:42 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 35s ago, effective interval 5m0s, healthy=true
2026/09/21 11:09:42 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:09:42 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:09:42 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:09:42 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:52 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:09:52 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:09:52 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:09:52 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 45s ago, effective interval 5m0s, healthy=true
2026/09/21 11:09:52 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:02 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:10:02 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:10:02 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 55s ago, effective interval 5m0s, healthy=true
2026/09/21 11:10:02 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:02 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈3939MB avail≈21959MB
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=26042720 → total=25898MB avail=21959MB used=3939MB (15.2%)
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.9GB avail=57.9GB (10.2%)
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.1GB (1.8%)
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="1.17 1.01 0.94 4/1190 1029" → 1m=1.17 5m=1.01 15m=0.94
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 55.4°C (hwmon2)
2026/09/21 11:10:12 info.go:13: [DEBUG] [system] GetInfo done in 66ms — mem=3939MB/25898MB (15.2%), rootDisk=6.9GB/68.4GB (10.2%), load=1.17/1.01/0.94, temp=55.4°C (hwmon2), cpu=3.4%
2026/09/21 11:10:12 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:10:12 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:10:12 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:10:12 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m5s ago, effective interval 5m0s, healthy=true
2026/09/21 11:10:12 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:12 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:10:12 scheduler.go:346: [INFO] [scheduler] Running job: stack-scan
2026/09/21 11:10:12 scheduler.go:67: [DEBUG] [scheduler] job stack-scan: execution starting
2026/09/21 11:10:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=false composePath=/opt/docker/stacks/n8n/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=false composePath=/opt/docker/stacks/navidrome/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=false composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=false composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=false composePath=/opt/docker/stacks/privatebin/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=false composePath=/opt/docker/stacks/romm/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=true composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=false composePath=/opt/docker/stacks/vikunja/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=false composePath=/opt/docker/stacks/wishlist/docker-compose.yml
2026/09/21 11:10:12 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
2026/09/21 11:10:12 manager.go:1620: [DEBUG] [stacks] getCatalogTemplateSlugs: found 53 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
2026/09/21 11:10:12 manager.go:630: [DEBUG] [stacks] ScanStacks: catalog has 53 template slugs for orphan detection
2026/09/21 11:10:12 manager.go:661: [INFO] [stacks] ScanStacks complete: 55 stacks found (1 deployed, 54 available)
2026/09/21 11:10:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:12 scheduler.go:363: [INFO] [scheduler] Job stack-scan completed (took 82ms)
2026/09/21 11:10:12 auth.go:142: [DEBUG] [web] auth: valid session for POST /api/sync
2026/09/21 11:10:12 router.go:81: [DEBUG] [api] POST /api/sync (path=/sync)
2026/09/21 11:10:12 router.go:1002: [INFO] [api] Manual catalog sync requested
2026/09/21 11:10:12 sync.go:208: [INFO] [sync] Starting catalog sync
2026/09/21 11:10:12 sync.go:296: [INFO] [sync] Pulling latest from https://gitea.dooplex.hu/admin/app-catalog-felhom.eu.git (branch: main)
2026/09/21 11:10:12 sync.go:298: [DEBUG] [sync] git fetch --depth 1 origin main in /opt/docker/felhom-controller/data/catalog-cache
2026/09/21 11:10:12 sync.go:592: [DEBUG] [sync] Running: git fetch --depth 1 origin main
2026/09/21 11:10:12 sync.go:592: [DEBUG] [sync] Running: git reset --hard origin/main
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] actualbudget/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] actualbudget/.felhom.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] adventurelog/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] adventurelog/.felhom.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] audiobookshelf/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] audiobookshelf/.felhom.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] bentopdf/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] bentopdf/.felhom.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] bookstack/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] bookstack/.felhom.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] calcom/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] calcom/.felhom.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] calibre-web/docker-compose.yml: hash match, skipped
2026/09/21 11:10:12 sync.go:416: [DEBUG] [sync] calibre-web/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] claper/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] claper/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] code-server/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] code-server/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] crafty-controller/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] crafty-controller/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] docmost/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] docmost/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] emby/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] emby/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] ghost/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] ghost/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] gitea/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] gitea/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] glance/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] glance/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] gokapi/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] gokapi/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] grafana/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] grafana/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] gramps-web/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] gramps-web/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] home-assistant/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] home-assistant/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] homebox/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] homebox/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] homepage/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] homepage/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] immich/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] immich/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] jellyfin/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] jellyfin/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] kimai/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] kimai/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] komga/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] komga/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] mealie/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] mealie/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] n8n/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] n8n/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] navidrome/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] navidrome/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] nextcloud/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] nextcloud/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] onlyoffice/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] onlyoffice/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] opengist/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] opengist/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] outline/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] outline/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] paperless-ngx/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] paperless-ngx/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] papra/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] papra/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] plant-it/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] plant-it/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] plex/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] plex/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] privatebin/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] privatebin/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] radarr/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] radarr/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] rallly/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] rallly/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] recipe-importer/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] recipe-importer/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] romm/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] romm/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] seerr/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] seerr/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] sonarr/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] sonarr/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] sparkyfitness/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] sparkyfitness/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] tandoor/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] tandoor/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] termix/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] termix/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:509: [DEBUG] [sync] uptime-kuma: catalog has moved past the pin — rendering the stored applied definition
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] uptime-kuma/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] uptime-kuma/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] vaultwarden/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] vaultwarden/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] vikunja/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] vikunja/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] wanderer/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] wanderer/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] wger/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] wger/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] wishlist/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] wishlist/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] zipline/docker-compose.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:416: [DEBUG] [sync] zipline/.felhom.yml: hash match, skipped
2026/09/21 11:10:13 sync.go:263: [INFO] [sync] Catalog sync complete
2026/09/21 11:10:13 router.go:1008: [INFO] [api] Catalog sync completed: Sablonok naprakészek — nincs változás
2026/09/21 11:10:15 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:10:15 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:10:22 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:10:22 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:10:22 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m15s ago, effective interval 5m0s, healthy=true
2026/09/21 11:10:22 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:22 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:32 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:10:32 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:10:32 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:32 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m25s ago, effective interval 5m0s, healthy=true
2026/09/21 11:10:32 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:32 auth.go:142: [DEBUG] [web] auth: valid session for POST /api/stacks/rescan
2026/09/21 11:10:32 router.go:81: [DEBUG] [api] POST /api/stacks/rescan (path=/stacks/rescan)
2026/09/21 11:10:32 router.go:362: [INFO] [api] Manual stack rescan requested
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "actualbudget" deployed=false composePath=/opt/docker/stacks/actualbudget/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "adventurelog" deployed=false composePath=/opt/docker/stacks/adventurelog/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "audiobookshelf" deployed=false composePath=/opt/docker/stacks/audiobookshelf/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bentopdf" deployed=false composePath=/opt/docker/stacks/bentopdf/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "bookstack" deployed=false composePath=/opt/docker/stacks/bookstack/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calcom" deployed=false composePath=/opt/docker/stacks/calcom/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "calibre-web" deployed=false composePath=/opt/docker/stacks/calibre-web/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "claper" deployed=false composePath=/opt/docker/stacks/claper/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "code-server" deployed=false composePath=/opt/docker/stacks/code-server/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "crafty-controller" deployed=false composePath=/opt/docker/stacks/crafty-controller/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "docmost" deployed=false composePath=/opt/docker/stacks/docmost/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "emby" deployed=false composePath=/opt/docker/stacks/emby/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "filebrowser" deployed=false composePath=/opt/docker/stacks/filebrowser/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "ghost" deployed=false composePath=/opt/docker/stacks/ghost/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gitea" deployed=false composePath=/opt/docker/stacks/gitea/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "glance" deployed=false composePath=/opt/docker/stacks/glance/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gokapi" deployed=false composePath=/opt/docker/stacks/gokapi/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "grafana" deployed=false composePath=/opt/docker/stacks/grafana/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "gramps-web" deployed=false composePath=/opt/docker/stacks/gramps-web/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "home-assistant" deployed=false composePath=/opt/docker/stacks/home-assistant/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homebox" deployed=false composePath=/opt/docker/stacks/homebox/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "homepage" deployed=false composePath=/opt/docker/stacks/homepage/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "immich" deployed=false composePath=/opt/docker/stacks/immich/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "jellyfin" deployed=false composePath=/opt/docker/stacks/jellyfin/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "kimai" deployed=false composePath=/opt/docker/stacks/kimai/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "komga" deployed=false composePath=/opt/docker/stacks/komga/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "mealie" deployed=false composePath=/opt/docker/stacks/mealie/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "n8n" deployed=false composePath=/opt/docker/stacks/n8n/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "navidrome" deployed=false composePath=/opt/docker/stacks/navidrome/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "nextcloud" deployed=false composePath=/opt/docker/stacks/nextcloud/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "onlyoffice" deployed=false composePath=/opt/docker/stacks/onlyoffice/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "opengist" deployed=false composePath=/opt/docker/stacks/opengist/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "outline" deployed=false composePath=/opt/docker/stacks/outline/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "paperless-ngx" deployed=false composePath=/opt/docker/stacks/paperless-ngx/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "papra" deployed=false composePath=/opt/docker/stacks/papra/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plant-it" deployed=false composePath=/opt/docker/stacks/plant-it/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "plex" deployed=false composePath=/opt/docker/stacks/plex/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "privatebin" deployed=false composePath=/opt/docker/stacks/privatebin/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "radarr" deployed=false composePath=/opt/docker/stacks/radarr/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "rallly" deployed=false composePath=/opt/docker/stacks/rallly/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "recipe-importer" deployed=false composePath=/opt/docker/stacks/recipe-importer/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "romm" deployed=false composePath=/opt/docker/stacks/romm/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "seerr" deployed=false composePath=/opt/docker/stacks/seerr/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sonarr" deployed=false composePath=/opt/docker/stacks/sonarr/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "sparkyfitness" deployed=false composePath=/opt/docker/stacks/sparkyfitness/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "tandoor" deployed=false composePath=/opt/docker/stacks/tandoor/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "termix" deployed=false composePath=/opt/docker/stacks/termix/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "traefik" deployed=false composePath=/opt/docker/stacks/traefik/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "uptime-kuma" deployed=true composePath=/opt/docker/stacks/uptime-kuma/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vaultwarden" deployed=false composePath=/opt/docker/stacks/vaultwarden/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "vikunja" deployed=false composePath=/opt/docker/stacks/vikunja/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wanderer" deployed=false composePath=/opt/docker/stacks/wanderer/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wger" deployed=false composePath=/opt/docker/stacks/wger/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "wishlist" deployed=false composePath=/opt/docker/stacks/wishlist/docker-compose.yml
2026/09/21 11:10:32 manager.go:563: [DEBUG] [stacks] ScanStacks: found stack "zipline" deployed=false composePath=/opt/docker/stacks/zipline/docker-compose.yml
2026/09/21 11:10:32 manager.go:1620: [DEBUG] [stacks] getCatalogTemplateSlugs: found 53 template slugs in /opt/docker/felhom-controller/data/catalog-cache/templates
2026/09/21 11:10:32 manager.go:630: [DEBUG] [stacks] ScanStacks: catalog has 53 template slugs for orphan detection
2026/09/21 11:10:32 manager.go:661: [INFO] [stacks] ScanStacks complete: 55 stacks found (1 deployed, 54 available)
2026/09/21 11:10:32 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:32 router.go:369: [INFO] [api] Stack rescan completed: 55 stacks found
2026/09/21 11:10:33 auth.go:142: [DEBUG] [web] auth: valid session for GET /api/stacks/uptime-kuma
2026/09/21 11:10:33 router.go:81: [DEBUG] [api] GET /api/stacks/uptime-kuma (path=/stacks/uptime-kuma)
2026/09/21 11:10:42 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:10:42 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:10:42 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:10:42 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:10:42 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:42 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m35s ago, effective interval 5m0s, healthy=true
2026/09/21 11:10:42 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:52 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:10:52 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:10:52 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:10:52 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m45s ago, effective interval 5m0s, healthy=true
2026/09/21 11:10:52 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:10:55 auth.go:142: [DEBUG] [web] auth: valid session for GET /apps/uptime-kuma
2026/09/21 11:10:55 server.go:542: [DEBUG] [web] ServeHTTP: GET /apps/uptime-kuma from 172.18.0.3:56160
2026/09/21 11:10:56 auth.go:142: [DEBUG] [web] auth: valid session for GET /stacks
2026/09/21 11:10:56 server.go:542: [DEBUG] [web] ServeHTTP: GET /stacks from 172.18.0.3:56160
2026/09/21 11:10:57 auth.go:142: [DEBUG] [web] auth: valid session for GET /apps/uptime-kuma
2026/09/21 11:10:57 server.go:542: [DEBUG] [web] ServeHTTP: GET /apps/uptime-kuma from 172.18.0.3:56160
2026/09/21 11:10:58 auth.go:142: [DEBUG] [web] auth: valid session for GET /stacks
2026/09/21 11:10:58 server.go:542: [DEBUG] [web] ServeHTTP: GET /stacks from 172.18.0.3:56160
2026/09/21 11:11:02 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:11:02 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 1m55s ago, effective interval 5m0s, healthy=true
2026/09/21 11:11:02 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:11:02 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:11:02 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:11:06 auth.go:142: [DEBUG] [web] auth: valid session for POST /api/stacks/uptime-kuma/update
2026/09/21 11:11:06 router.go:81: [DEBUG] [api] POST /api/stacks/uptime-kuma/update (path=/stacks/uptime-kuma/update)
2026/09/21 11:11:06 router.go:582: [INFO] [api] update requested for stack: uptime-kuma
2026/09/21 11:11:06 router.go:81: [DEBUG] [api] actionStack: action=update name=uptime-kuma
2026/09/21 11:11:06 update.go:292: [ERROR] [stacks] update uptime-kuma REFUSED (downgrade): installed is provably NEWER than the catalog on every differing service (installed=map[uptime-kuma:{louislam/uptime-kuma:2.5.0 sha256:a8610b3b4c38077922ba51b036691e06887d7cefd91fe620fd3d6d23d03dc240 2026-09-21T11:09:07Z}] catalog=map[uptime-kuma:louislam/uptime-kuma:2.4.0])
2026/09/21 11:11:07 auth.go:142: [DEBUG] [web] auth: valid session for POST /api/stacks/uptime-kuma/update
2026/09/21 11:11:07 router.go:81: [DEBUG] [api] POST /api/stacks/uptime-kuma/update (path=/stacks/uptime-kuma/update)
2026/09/21 11:11:07 router.go:582: [INFO] [api] update requested for stack: uptime-kuma
2026/09/21 11:11:07 router.go:81: [DEBUG] [api] actionStack: action=update name=uptime-kuma
2026/09/21 11:11:07 update.go:292: [ERROR] [stacks] update uptime-kuma REFUSED (downgrade): installed is provably NEWER than the catalog on every differing service (installed=map[uptime-kuma:{louislam/uptime-kuma:2.5.0 sha256:a8610b3b4c38077922ba51b036691e06887d7cefd91fe620fd3d6d23d03dc240 2026-09-21T11:09:07Z}] catalog=map[uptime-kuma:louislam/uptime-kuma:2.4.0])
2026/09/21 11:11:08 auth.go:142: [DEBUG] [web] auth: valid session for POST /api/stacks/uptime-kuma/update
2026/09/21 11:11:08 router.go:81: [DEBUG] [api] POST /api/stacks/uptime-kuma/update (path=/stacks/uptime-kuma/update)
2026/09/21 11:11:08 router.go:582: [INFO] [api] update requested for stack: uptime-kuma
2026/09/21 11:11:08 router.go:81: [DEBUG] [api] actionStack: action=update name=uptime-kuma
2026/09/21 11:11:08 update.go:292: [ERROR] [stacks] update uptime-kuma REFUSED (downgrade): installed is provably NEWER than the catalog on every differing service (installed=map[uptime-kuma:{louislam/uptime-kuma:2.5.0 sha256:a8610b3b4c38077922ba51b036691e06887d7cefd91fe620fd3d6d23d03dc240 2026-09-21T11:09:07Z}] catalog=map[uptime-kuma:louislam/uptime-kuma:2.4.0])
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈3967MB avail≈21931MB
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=26008684 → total=25898MB avail=21931MB used=3967MB (15.3%)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.9GB avail=57.9GB (10.2%)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.1GB (1.8%)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="1.08 1.02 0.95 3/1183 1190" → 1m=1.08 5m=1.02 15m=0.95
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 52.9°C (hwmon1)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] GetInfo done in 59ms — mem=3967MB/25898MB (15.3%), rootDisk=6.9GB/68.4GB (10.2%), load=1.08/1.02/0.95, temp=52.9°C (hwmon1), cpu=7.2%
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job status-refresh: execution starting
2026/09/21 11:11:12 scheduler.go:346: [INFO] [scheduler] Running job: offsite-credential-retry
2026/09/21 11:11:12 scheduler.go:346: [INFO] [scheduler] Running job: system-health
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job system-health: execution starting
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] GetInfo starting (hddPath="/mnt/felhom-drives/scratch_hdd", hasCPUCollector=true)
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job health-probes: execution starting
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job deadapp-check: execution starting
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job ring-spill: execution starting
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job offsite-credential-retry: execution starting
2026/09/21 11:11:12 scheduler.go:363: [INFO] [scheduler] Job offsite-credential-retry completed (took 0s)
2026/09/21 11:11:12 scheduler.go:346: [INFO] [scheduler] Running job: backup-cache
2026/09/21 11:11:12 scheduler.go:67: [DEBUG] [scheduler] job backup-cache: execution starting
2026/09/21 11:11:12 manager.go:712: [INFO] [stacks] Status refresh: 3 containers across 55 stacks
2026/09/21 11:11:12 healthprobe.go:53: [DEBUG] [stacks] RunHealthProbes: skipping uptime-kuma — last check 2m5s ago, effective interval 5m0s, healthy=true
2026/09/21 11:11:12 healthprobe.go:76: [DEBUG] [stacks] RunHealthProbes: collected 0 targets (1 skipped not due, 0 skipped no container)
2026/09/21 11:11:12 backup.go:465: [DEBUG] groupStacksByDrive: /mnt/sys_drive → [uptime-kuma]
2026/09/21 11:11:12 backup.go:1107: [INFO] [backup] Found 0 DB dump files across drives
2026/09/21 11:11:12 dbdump.go:128: [DEBUG] DiscoverDatabases: running docker ps to find database containers
2026/09/21 11:11:12 dbdump.go:147: [DEBUG] DiscoverDatabases: docker ps output: c8741bfa31f7	uptime-kuma	uptime-kuma	louislam/uptime-kuma:2.5.0
7c794623b894	felhom-controller		gitea.dooplex.hu/admin/felhom-controller:0.260.0
6d206504c99e	filebrowser	filebrowser	gtstef/filebrowser:1.3.3-stable
2515331bc19e	traefik	traefik	traefik:v3.6.7
2026/09/21 11:11:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container uptime-kuma (image=louislam/uptime-kuma:2.5.0, not a database)
2026/09/21 11:11:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container felhom-controller (image=gitea.dooplex.hu/admin/felhom-controller:0.260.0, not a database)
2026/09/21 11:11:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container filebrowser (image=gtstef/filebrowser:1.3.3-stable, not a database)
2026/09/21 11:11:12 dbdump.go:169: [DEBUG] DiscoverDatabases: skipping container traefik (image=traefik:v3.6.7, not a database)
2026/09/21 11:11:12 dbdump.go:203: [DEBUG] DiscoverDatabases: found 0 database(s), skipped 4 non-DB container(s)
2026/09/21 11:11:12 dbdump.go:206: [INFO] [backup] Discovered 0 databases
2026/09/21 11:11:12 [INFO] [stacks] ParseComposeHDDMounts: found 0 HDD mounts for /opt/docker/stacks/uptime-kuma/docker-compose.yml
2026/09/21 11:11:12 [INFO] [backup] Discovered app data: 1 apps
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/sys_drive" total=68.4 GB used=6.9 GB avail=57.9GB (10.2%)
2026/09/21 11:11:12 recovery_unit.go:224: [INFO] [backup] Recovery unit captured for uptime-kuma → /mnt/sys_drive/felhom-data/backups/primary/uptime-kuma (images=1, secrets-referenced=0, data_keys=0, portable-carried=0/0, withheld=0)
2026/09/21 11:11:12 backup.go:1177: [INFO] [backup] Backup status cache refreshed
2026/09/21 11:11:12 scheduler.go:363: [INFO] [scheduler] Job backup-cache completed (took 53ms)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readMemInfo: guest cap=25898MB (host total was 30714460KB) → used≈3951MB avail≈21947MB
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readMemInfo: totalKB=30714460 availKB=26027912 → total=25898MB avail=21947MB used=3951MB (15.3%)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/" bsize=4096 total=68.4GB used=6.9GB avail=57.9GB (10.2%)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readDiskUsage: path="/mnt/felhom-drives/scratch_hdd" bsize=4096 total=937.8GB used=17.0GB avail=873.1GB (1.8%)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readLoadAvg: raw="1.08 1.02 0.95 4/1195 1254" → 1m=1.08 5m=1.02 15m=0.95
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readThermalZones: /sys — found 1 zones
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] readTemperature: found via hwmon at /sys — 52.9°C (hwmon1)
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] GetInfo done in 65ms — mem=3951MB/25898MB (15.3%), rootDisk=6.9GB/68.4GB (10.2%), load=1.08/1.02/0.95, temp=52.9°C (hwmon1), cpu=8.9%
2026/09/21 11:11:12 healthcheck.go:86: [DEBUG] [monitor] Raw values: disk=10.2%, hdd=1.8% (configured=true), mem=15.3% (3951MB/25898MB), cpu=8.9%, temp=52.9°C (hwmon1)
2026/09/21 11:11:12 healthcheck.go:118: [DEBUG] [monitor] SSD disk: OK (10%)
2026/09/21 11:11:12 healthcheck.go:151: [DEBUG] [monitor] Memory: OK (15%)
2026/09/21 11:11:12 healthcheck.go:169: [DEBUG] [monitor] CPU: OK (9%)
2026/09/21 11:11:12 healthcheck.go:187: [DEBUG] [monitor] Temperature: OK (53°C)
2026/09/21 11:11:12 healthcheck.go:201: [DEBUG] [monitor] Docker daemon: OK
2026/09/21 11:11:12 healthcheck.go:209: [DEBUG] [monitor] Checking 1 protected containers: [traefik]
2026/09/21 11:11:12 healthcheck.go:219: [DEBUG] [monitor] All protected containers running
2026/09/21 11:11:12 info.go:13: [DEBUG] [system] GetDiskUsage: path="/mnt/felhom-drives/scratch_hdd" total=937.8 GB used=17.0 GB avail=873.1GB (1.8%)
2026/09/21 11:11:12 healthcheck.go:238: [INFO] [monitor] Health check: status=ok
2026/09/21 11:11:12 healthcheck.go:242: [DEBUG] [monitor] Final status: ok (issues=0, warnings=0, info=5)
2026/09/21 11:11:12 scheduler.go:363: [INFO] [scheduler] Job system-health completed (took 140ms)
2026/09/21 11:11:12 infra.go:67: [INFO] [infra] cloudflared skipped — no cf_tunnel_token configured (LAN-only node)
