Gosight Server
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.
Go Svelte Javascript SQL YAML JSON Backend
Project Information
Stars
0
Language
Go
License GNU General Public License v3.0
Updated
June 14, 2025
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.
Documentation
Features
- 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
Architecture
- 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
Build
go build -o gosight-server ./cmd
Running
./gosight-server --config ./config.yaml
See sample config in ./server/config/.
Key Components / Directory Overview
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
License
GPL-3.0-or-later
Images are automatically mirrored
Images from the GitHub repository are downloaded and hosted locally to ensure they load properly.