GoSight Server is a high-performance observability backend built in Go. It receives telemetry from GoSight Agents, OpenTelemetry Endpoints (GRPC) and SDK, and Syslog, stores metrics and logs, processes alerts, and serves a dynamic web UI for visualization and investigation.
- OpenTelemetry Endpoint for ingesting Metrics, Logs, and Traces
- TLS/mTLS-secured gRPC endpoints
- RFC 3164 / RFC 5424 / CEF compatible SysLog Server for ingesting logs
- VictoriaMetrics integration for metric and log storage (Time-Series + Compressed JSON for logs)
- PostgreSQL or file-backed log/event storage (AWS S3 Connector Planned)
- Rule-based alert evaluation + dispatch
- Live WebSocket telemetry streaming
- REST API for metrics, logs, endpoints, and alerts
- Reactive Sveltekit+Flowbite+Tailwind UI with ApexCharts and customizable dashboards
- Receives telemetry via gRPC stream
- Stores metrics in VictoriaMetrics
- Handles logs, alerts, commands, and events
- Web dashboard renders views from real-time and historical data
go build -o gosight-server ./cmd./gosight-server --config ./config.yamlSee sample config in ./server/config/.
internal/alerts/– Alert models and rule evaluation engineinternal/auth/– JWT-based authentication and session managementinternal/bootstrap/– Server startup logic and configuration loadinginternal/bufferengine/– Queue/buffer system for telemetry processinginternal/cache/– In-memory caching layer for metadata and sessionsinternal/config/– Configuration file parsing and defaultsinternal/contextutil/– Request-scoped context helpersinternal/dispatcher/– Alert action dispatcher for routes (webhook, script)internal/events/– Event tracking and structured broadcastinginternal/grpc/– gRPC service registration and listener setupinternal/http/– HTTP server handlers and routing (REST and UI)internal/rules/– Rule parsing, condition logic, and evaluation contextinternal/runner/– Metric and log task execution pipelineinternal/store/– Top-level store interface and wrappers:alertstore/datastore/eventstore/logstore/metastore/metricindex/metricstore/routestore/rulestore/userstore/
internal/syncmanager/– Live sync and periodic persistenceinternal/sys/– System-level information accessinternal/syslog/– SysLog server for ingesting logsinternal/telemetry/– Metric and log ingestion + transformationinternal/testutils/– Mocks and utilities for testinginternal/tracker/– In-memory agent/container trackerinternal/usermodel/– User, role, and permission modelsinternal/websocket/– WebSocket hubs and live stream broadcasting
GPL-3.0-or-later