Skip to content

Releases: logward-dev/logward

v0.3.1

15 Dec 15:35
2a9b1b1

Choose a tag to compare

🎨 Light Mode & Theme System

This release introduces comprehensive light/dark mode support with improved accessibility and dynamic theming across all UI components.

✨ What's New

Light Mode Support (#41)

  • Theme Toggle: New toggle in the header allowing users to switch between light and dark modes
  • Persistent Preference: Theme choice is saved and applied before page render (no flash of unstyled content)
  • High Contrast Mode: Automatic support for prefers-contrast: more accessibility setting
  • Smooth Transitions: Animated theme changes for a polished experience

Dynamic Chart Theming

  • All ECharts components (LogsChart, ServiceMap, SIEM widgets) now adapt to theme changes in real-time
  • Updated colors, axes, tooltips, and legends for optimal readability in both modes

Code Block Theming

  • Documentation code blocks use Shiki with light/dark themes
  • Syntax highlighting automatically updates with the UI theme

Improved Color Contrast

  • Overhauled CSS variables for both light and dark modes
  • Better accessibility and readability across all components

🐳 Deployment Documentation

  • Added instructions for Docker log collection with Fluent Bit
  • Expanded Kubernetes/Helm deployment section
  • New logging profile in docker-compose for optional Fluent Bit setup

Full Changelog: v0.3.0...v0.3.1

v0.3.0

11 Dec 15:30

Choose a tag to compare

🛡️ SIEM Dashboard & ⚡ Horizontal Scaling

This release introduces a complete Security Information and Event Management (SIEM) dashboard, C# SDK support, and horizontal scaling infrastructure.

✨ What's New

SIEM Dashboard & Incident Management (#5)

  • New Security Dashboard at /dashboard/security with 6 real-time widgets:
    • Summary stats (detections, incidents, open, critical)
    • Top threats chart (Sigma rules by detection count)
    • Detection timeline (time-series visualization)
    • Affected services list
    • Severity distribution pie chart
    • MITRE ATT&CK heatmap
  • Complete incident lifecycle: open → investigating → resolved → false_positive
  • Automatic incident grouping by trace ID and time window
  • Comments thread and activity history
  • PDF report export for incident documentation

C# / .NET SDK (#9)

  • Official C# SDK for LogWard integration
  • Configure via URL, port, and API key without modifying existing logging calls

Horizontal Scaling Support (#20)

  • Stateless backend architecture (all state in Redis/PostgreSQL)
  • Multiple backend instances can run simultaneously
  • BullMQ worker scaling with concurrent job processing
  • Updated docker-compose.yml to support multiple replicas
  • Health check endpoint for load balancer integration

🐛 Bug Fixes

  • Fix Docker build on Alpine 3.23 (postgresql16-client package naming)
  • Fix time window boundary race conditions in incident auto-grouping
  • Fix SSE endpoint test timeouts

Full Changelog: v0.2.4...v0.3.0

v0.2.4

04 Dec 17:32

Choose a tag to compare

📚 Documentation & 🔧 Onboarding Fixes

This release adds new SDK documentation, integration guides, and fixes critical issues with the onboarding skip flow.


✨ What's New

Go SDK Documentation

  • New documentation page at /docs/sdks/go
  • Complete guide for integrating LogWard with Go applications

Syslog Integration Guide

  • New guide at /docs/syslog for receiving logs from:
    • Proxmox VE
    • VMware ESXi
    • UniFi Network
    • Any RFC 5424 syslog source
  • Step-by-step rsyslog configuration examples

Documentation Structure

  • New "Integrations" section in docs sidebar
  • OpenTelemetry moved from SDKs to Integrations
  • Go SDK added to README and SDK overview

🐛 Bug Fixes

Onboarding Flow

  • Fix "Skip tutorial" redirect loop keeping users stuck on /onboarding
  • Skip button now correctly checks if user has an organization before redirecting
  • Users who create an org then skip are now properly sent to dashboard

Docker & Infrastructure

  • Fix worker/backend race condition for database migrations
  • Fix Redis healthcheck with authentication support
  • Set default values for database and Redis passwords

Frontend

  • Fix PUBLIC_API_URL build-time vs runtime configuration issue
  • Fix "Sign Up Free" link pointing to /signup instead of /register
  • Fix curl command syntax in README for API log ingestion

Closes: #33

Full Changelog: v0.2.3...v0.2.4

v0.2.3

03 Dec 23:05

Choose a tag to compare

🐳 Docker Image Publishing & Self-Hosting Improvements

This release makes self-hosting LogWard easier than ever with pre-built Docker images - no build required!

Closes #30

✨ What's New

Docker Images

Self-Hosting (2 minutes setup)

Create docker-compose.yml and .env, then:

docker compose up -d

No git clone, no build tools - just Docker!

📝 Changes

  • docker-compose.yml now uses pre-built images by default
  • Updated documentation with inline docker-compose examples
  • Removed install.sh references from all docs

📚 Documentation


Full Changelog: v0.2.2...v0.2.3

v0.2.2

02 Dec 22:16
12f3fba

Choose a tag to compare

What's Changed

  • build(deps): Bump the npm_and_yarn group across 2 directories with 2 updates by @dependabot[bot] in #28
  • V0.2.2 by @Polliog in #29

New Contributors

Full Changelog: v0.2.1...0.2.2

v0.2.1

01 Dec 12:35
c54dde2

Choose a tag to compare

🚀 New Features

Redis Caching Layer

  • Comprehensive caching system to minimize database load and improve response times
  • Type-safe CacheManager utility with configurable TTLs per cache type
  • Session validation caching (30 min TTL) - ~30x faster on cache hit
  • API key verification caching (60 sec TTL) - ~20x faster on cache hit
  • Query result caching with deterministic keys (60 sec TTL) - ~10x faster on cache hit
  • Trace and aggregation caching (5 min TTL) - ~50x faster on cache hit
  • Automatic cache invalidation on log ingestion
  • New admin API endpoints for cache management:
    • GET /api/v1/admin/cache/stats - View cache hit/miss statistics
    • POST /api/v1/admin/cache/clear - Clear all caches
    • POST /api/v1/admin/cache/invalidate/:projectId - Invalidate project-specific cache
  • Configurable via CACHE_ENABLED and CACHE_TTL environment variables

Landing Page

  • New public index page for the application

⚡ Performance Improvements

Database Optimization

  • New composite indexes for common query patterns:
    • idx_logs_project_level_time (project + level filtering)
    • idx_logs_project_service_time (project + service filtering)
    • idx_logs_project_service_level_time (combined filtering)
    • idx_logs_project_errors (partial index for error logs)
  • TimescaleDB Continuous Aggregates:
    • logs_hourly_stats for dashboard timeseries (10-50x faster)
    • logs_daily_stats for historical analytics
  • Compression policy optimized: 7 days → 1 day (90% storage reduction for old data)
  • PostgreSQL tuning (parallel queries, shared_buffers, work_mem, WAL settings)
  • Connection pooling with environment-based sizing (5/10/20 connections)
  • Statement timeout protection (30s production, 60s development)
  • Admin health endpoint now includes pool statistics

Verified Performance

  • Ingestion: 722,890 logs @ 7.40ms P95, 0% error rate
  • Query: Sub-10ms P95 latency with new indexes

🐛 Bug Fixes

  • Admin Panel: Fixed double sidebar and footer issue caused by nested layout inheritance
  • Admin Routes: Fixed incorrect navigation paths (missing /dashboard prefix)
    • User Management links now correctly navigate to user details
    • Organization Management links now correctly navigate to organization details
    • Project Management links now correctly navigate to project details

🧪 Testing

  • Added 38 new tests (859 → 897 total)
  • New test file: tests/utils/cache.test.ts (~40 tests for CacheManager)
  • New test file: tests/modules/admin/routes.test.ts (~25 tests for admin API)
  • Extended admin-service.test.ts with additional coverage
  • All 897 tests passing ✅

Full Changelog: v0.2.0...v0.2.1

v0.2.0

29 Nov 21:01
1db9c2e

Choose a tag to compare

What's Changed

Full Changelog: v0.1.0...v0.2.0

v0.1.0

26 Nov 11:36

Choose a tag to compare