跳到正文

CF Workers Status Page

不活跃
eidam/cf-workers-status-page

基于 Cloudflare Workers 的状态页系统,为你的服务提供实时监控和状态更新,零维护、零成本。

在 GitHub 查看
星标
2806
Fork
1418
关注
2806
未关闭 Issue
46

该介绍目前仅提供英文版本。

CF Workers Status Page

A serverless status page powered by Cloudflare Workers, offering real-time monitoring and status updates for your services. Built to be maintenance-free and cost-effective, running entirely on Cloudflare’s free tier.

Core Features

  • Zero Maintenance: Runs completely on Cloudflare’s infrastructure
  • Cost Effective: Operates within Cloudflare’s free tier limits
  • Real-time Monitoring: Monitors your services every minute
  • Multiple Locations: Checks from multiple Cloudflare locations
  • Customizable UI: Easy to customize status page appearance
  • KV Storage: Uses Workers KV for storing monitoring data
  • Incident Reports: Support for creating and managing incident reports

Quick Start

  1. Fork and Deploy:

    # Fork the repository
    # Deploy using the Deploy to Cloudflare Workers button in the repository
  2. Configure Monitoring:

    settings:
      title: 'Status Page'
      url: 'https://status.example.com'
      logo: 'https://example.com/logo.png'
      monitoring_interval: 60
    
    monitored_services:
      - name: 'API'
        url: 'https://api.example.com/health'
        method: 'GET'
        expected_status: 200
  3. Set Up Custom Domain (Optional):

    • Add custom domain in Cloudflare Dashboard
    • Configure DNS records accordingly

Key Components

  • Workers Script: Core monitoring and status page logic
  • KV Storage: Stores monitoring results and incidents
  • GitHub Integration: Automated deployments via GitHub Actions
  • Customizable Theme: Easy to modify appearance
  • Monitor Configuration: YAML-based service configuration

Use Cases

  • Service status monitoring
  • API endpoint health checks
  • Website availability tracking
  • Global performance monitoring
  • Incident communication
  • SLA compliance tracking

Advanced Features

  • Multiple Regions: Monitor from different geographic locations
  • Custom Checks: Support for various HTTP methods
  • Incident Management: Create and update incident reports
  • Historical Data: Store and display historical uptime data
  • Custom Headers: Support for authentication headers
  • Status Badges: Embeddable status badges
  • Webhook Notifications: Alert integrations (optional)

Configuration Options

# Advanced configuration example
settings:
  title: 'My Status Page'
  url: 'https://status.example.com'
  logo: 'https://example.com/logo.png'
  theme: 'dark'
  monitoring_interval: 60

monitored_services:
  - name: 'Production API'
    url: 'https://api.example.com/health'
    method: 'GET'
    expected_status: 200
    headers:
      Authorization: 'Bearer ${AUTH_TOKEN}'

Development Setup

  1. Local Development:

    # Install dependencies
    npm install
    
    # Start local development
    wrangler dev
  2. Testing:

    npm test

Community and Support

License

This project is licensed under the MIT License.

按共同分类和标签排序的同类开源项目。

全部监控项目 →