Commit Graph
34 Commits
Author SHA1 Message Date
Andras Bacsai f17cdc1c74 feat(analytics): add server analytics page and split settings
Add a per-server Analytics page scoped to that host, move traffic
settings out of Sentinel, and put metrics settings on Charts.
Surface 4xx/5xx on path rows and restyle deployment logs.
2026-09-08 14:20:41 +02:00
Aditya Tripathi 415489632b feat(traffic): add bandwidth and visitor sparklines to KPI cards
Extend TrafficSeriesBucketData with requests, bytesIn, bytesOut,
uniqueVisitors, and p95 fields, and aggregate them per bucket in the
global, dashboard, and application analytics Livewire components.
Add bandwidthSpark() and uniquesSpark() to BuildsTrafficChartPayload
and wire them into the chart payloads and blade views.

Also add a compactNumber() helper for dense metric columns, a
--chart-spark-bandwidth CSS variable, and improve the traffic globe
with focus/resume controls, shortest-path angle interpolation, and
brighter base/marker theme colors.
2026-08-12 15:55:34 +00:00
Aditya Tripathi a5cfa7c238 feat(traffic): add global analytics page with status time series
Replace the server-scoped Analytics Livewire component with an
app-wide one that filters by server/application and supports live
refresh. Add a per-bucket status-class time series endpoint/data
class for a stacked-area chart, falling back to the donut when the
Sentinel build doesn't support it. Decorate top-path rows with their
owning domain, expand breakdown dimensions to agent/ip/useragent, and
raise path/breakdown result limits. Capture X-Forwarded-For,
User-Agent, and Referer headers in traefik access logs (now enabled
in dev too) so IP, browser, and referrer breakdowns work. Add
flag-image and referer-host helpers for geo/referrer rendering.
2026-08-12 08:50:58 +00:00
Aditya Tripathi b4a5236e4e feat(traffic): add traffic analytics DTOs 2026-08-10 19:46:39 +00:00
Andras BacsaiandClaude Opus 4.6 3e0d48faea refactor: simplify remote process chain and harden ActivityMonitor
- Inline PrepareCoolifyTask and CoolifyTaskArgs into remote_process(),
  removing two single-consumer abstraction layers
- Add #[Locked] attribute to ActivityMonitor $activityId property
- Add team ownership verification in ActivityMonitor.hydrateActivity()
  with server_uuid fallback and fail-closed default
- Store team_id in activity properties for proper scoping
- Update CLAUDE.md to remove stale reference
- Add comprehensive tests for activity monitor authorization

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-26 13:26:16 +01:00
Andras Bacsai 8c77c63043 feat(proxy): add Traefik version tracking with notifications and dismissible UI warnings
- Add automated Traefik version checking job running weekly on Sundays
- Implement version detection from running containers and comparison with versions.json
- Add notifications across all channels (Email, Discord, Slack, Telegram, Pushover, Webhook) for outdated versions
- Create dismissible callout component with localStorage persistence
- Display cross-branch upgrade warnings (e.g., v3.5 -> v3.6) with changelog links
- Show patch update notifications within same branch
- Add warning icon that appears when callouts are dismissed
- Prevent duplicate notifications during proxy restart by adding restarting parameter
- Fix notification spam with transition-based logic for status changes
- Enable system email settings by default in development mode
- Track last saved/applied proxy settings to detect configuration drift
2025-11-14 11:35:22 +01:00
andrasbacsai d1a5f97f59 Fix styling 2024-06-19 06:59:46 +00:00
Thijmen d86274cc37 Fix styling 2024-06-10 20:43:34 +00:00
Andras Bacsai 2509406d1c fix: startproxy event
fix: add data to async remove processes
2024-03-12 11:22:02 +01:00
Andras Bacsai 6bb79e10bc fix: double ws connection 2023-12-08 22:51:42 +01:00
Andras Bacsai b55bd298f2 fix: service navbar using new realtime events 2023-12-08 12:12:44 +01:00
Andras Bacsai 9cba0a6df3 fix: boarding again 2023-09-18 14:41:31 +02:00
Andras Bacsai da4c2ee60f fix: boarding
fix: error handling
fix: restarting state
2023-09-15 15:34:25 +02:00
Andras Bacsai 17c0e91a0d feat: ssh-agent instead of filesystem based ssh keys 2023-09-14 10:12:58 +02:00
Andras Bacsai 82a01b4483 format muhahaha 2023-08-11 20:48:52 +02:00
Andras Bacsai f2228cec7b testing php storm code cleanup and styling 2023-08-08 11:51:36 +02:00
Andras Bacsai 3bdea4c931 wip 2023-06-20 20:19:31 +02:00
Andras Bacsai 9f0ca1cc2e wip 2023-06-20 19:08:43 +02:00
Andras Bacsai de759290e5 wip 2023-06-20 15:04:46 +02:00
Andras Bacsai f7dd110a49 subscribe to events 2023-06-19 14:31:42 +02:00
Andras Bacsai 6e084db3d9 ignore command center errors 2023-06-07 15:39:08 +02:00
Andras Bacsai 0f50d1accd updates 2023-05-30 15:52:17 +02:00
Andras Bacsai ec233162e9 wip previews 2023-05-16 14:11:55 +02:00
Andras Bacsai a275ac5f41 wip 2023-05-16 11:39:18 +02:00
Andras Bacsai 5ed91c05bf fixes 2023-05-08 09:16:50 +02:00
Joao Patricio f50e850774 wip 2023-05-03 07:40:12 +01:00
Joao Patricio 79a850f3b9 wip 2023-05-03 07:24:34 +01:00
Joao Patricio 00a8c847e9 wip 2023-05-03 06:23:45 +01:00
Joao Patricio e7763f3b73 Refactor for CoolifyTask. 2023-05-03 06:15:45 +01:00
Joao Patricio 2d422326bd Running remote commands Sync inside Ansyc Job. Getting Output, now need to parse it. 2023-03-31 13:30:08 +01:00
Andras Bacsai 78c4344583 feat: add deployments as activity
fix: tests
refactor: remoteProcess
2023-03-29 12:27:02 +02:00
Andras Bacsai f57684b024 Add Servers and PrivateKeys
Add new testhost
Remove privatekey injection from Dockerfile
2023-03-24 22:15:36 +01:00
Joao Patricio 29fb40bd16 Refactoring: extract process handling from async job. 2023-03-21 10:32:38 +00:00
Joao Patricio 34c9265aa9 Refactoring: extract process handling from async job. 2023-03-21 10:02:16 +00:00