Skip to content

[FEATURE] Add Health Check Endpoint for Deployment Monitoring #23

Description

@KumarManglam-123

Feature Description

Currently, the server does not expose a dedicated health check endpoint to verify whether core services like the backend server, database, and Redis are functioning correctly.

Adding a simple health check route would make deployment monitoring, Docker health checks, CI/CD verification, and uptime tracking much easier.

Use Case / Problem Statement

Without a health endpoint, it is difficult to:

  • Confirm if the backend server is running properly
  • Verify database connectivity in production
  • Check Redis availability for real-time features
  • Integrate with monitoring tools or container health checks

This feature would improve reliability, observability, and production readiness of the BrowsePing server.

Proposed Solution

Create a new endpoint:

GET /health

Expected JSON response when healthy:
{
"status": "ok",
"database": "connected",
"redis": "connected",
"timestamp": "ISO_STRING"
}

If any dependency fails, return:

  • HTTP 500 status
  • JSON response with "status": "error"

Implementation should:

  • Check MySQL connection via Prisma
  • Ping Redis connection
  • Return structured JSON response
  • Work in both Docker and local environments
  • Be documented in README

Alternative Solutions

Monitoring could be handled externally using container orchestration or third-party uptime tools, but a built-in health endpoint is the standard and simplest approach for backend services.

Additional Context

Health check endpoints are commonly used in production systems for:

  • Load balancer health verification
  • Kubernetes/Docker container health checks
  • CI/CD deployment validation
  • Observability and uptime monitoring

Adding this endpoint would align BrowsePing with backend best practices.

Checklist

  • I have checked existing issues for similar requests
  • This feature would be useful for multiple users
  • I have provided use cases and examples

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions