O
OmniStack
ComponentsDocsPricing
YouTubeLinkedInWebsiteGitHubGet Started
IntroductionQuick StartInstallation
AuthenticationPaymentsUI ComponentsMediaFormsE-Commerce
Next.jsExpoGo
Back

Pulse

Self-hosted observability and performance monitoring SDK for Go applications built with Gin and GORM. Provides request tracing, database query monitoring, runtime metrics, error tracking with stack traces, health checks, threshold-based alerting (Slack, Discord, email, webhook), Prometheus export, and an embedded React dashboard — all from a single pulse.Mount() call with zero external dependencies.

GoMonitoring
View Full Documentation

What's Included

Request Tracing & Latency Tracking
Database Query Monitoring (N+1 Detection)
Runtime Metrics (Memory, Goroutines, GC)
Error Tracking with Stack Traces
Health Checks (Kubernetes-Compatible)
Alerting Engine (Slack, Discord, Email, Webhook)
Dependency Monitoring (External APIs)
WebSocket Live Updates
Prometheus Metrics Export
Data Export (JSON & CSV)
Embedded React Dashboard (8 Pages)
Zero External Dependencies

Installation

terminal
$ go get github.com/MUKE-coder/pulse

How to Use

1

Install the package

Add Pulse to your Go project.

go get github.com/MUKE-coder/pulse
2

Mount in your Gin app

Pass your Gin router and optional GORM database to pulse.Mount(). Everything starts automatically — tracing, metrics, health checks, and the dashboard.

import "github.com/MUKE-coder/pulse/pulse"

r := gin.Default()
pulse.Mount(r, db, pulse.Config{
    AppName: "My API",
    DevMode: true,
})

r.GET("/api/users", listUsersHandler)
r.Run(":8080")
3

Access the dashboard

Open the embedded monitoring dashboard to view request traces, database queries, runtime metrics, errors, and alerts.

# Dashboard: http://localhost:8080/pulse/ui/
# Default credentials: admin / pulse
# Health: http://localhost:8080/pulse/health
4

Configure alerting & Prometheus

Add notification channels for alerts and enable Prometheus metrics export for Grafana integration.

p := pulse.Mount(r, db, pulse.Config{
    AppName: "My API",
    Alerts: pulse.AlertConfig{
        Slack: &pulse.SlackConfig{
            WebhookURL: "https://hooks.slack.com/services/...",
        },
    },
    Prometheus: pulse.PrometheusConfig{
        Enabled: true,
    },
})

// Add custom health checks
p.AddHealthCheck(pulse.HealthCheck{
    Name:     "redis",
    Critical: true,
    CheckFunc: func(ctx context.Context) error {
        return redisClient.Ping(ctx).Err()
    },
})
Free
Open source component

Free to use · MIT License

CategoryMonitoring
PlatformsGo
Features12
Resources
Component DocsOmniStack Docs