https://github.com/copyleftdev/payer-status-io
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.2%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: copyleftdev
- Language: HTML
- Default Branch: main
- Size: 13.8 MB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Payer Status IO - WebSocket Health Monitor
A high-performance WebSocket-based health monitoring system for tracking the status of healthcare payer endpoints in real-time.
🚀 Features
- Real-time Monitoring: WebSocket-based push notifications for instant updates
- Multi-payer Support: Monitor 25+ insurance payers simultaneously
- Comprehensive Metrics: Track response times, status codes, and errors
- Configurable Probes: Customize check intervals and endpoints per payer
- Prometheus Integration: Built-in metrics endpoint for monitoring
- Docker & Kubernetes Ready: Containerized deployment with health checks
- REST API: Manage and query status programmatically
📦 Quick Start
Prerequisites
- Go 1.21+
- Docker 20.10+
- Make (optional, but recommended)
Using Docker (Recommended)
```bash
Start the service
docker-compose up -d
View logs
docker-compose logs -f ```
Local Development
```bash
Build and run
go build -o bin/server ./cmd/server ./bin/server --config ./docs/payer_status.yaml
Or run with hot-reloading (requires air)
make dev ```
🔌 API Endpoints
GET /health- Health check endpointGET /metrics- Prometheus metricsGET /status- Current status of all payersGET /status/{payer}- Status for a specific payerWS /ws- WebSocket endpoint for real-time updates
🔧 Configuration
Configuration is done via YAML. See docs/configuration.md for details.
```yaml server: port: 8080 metricsport: 9090 loglevel: info
probes: - name: Aetna endpoints: - type: login url: https://aetna.com/login interval: 5m timeout: 10s ```
📊 Monitoring
Prometheus metrics are exposed on port 9090 by default:
probe_duration_seconds- Duration of HTTP probesprobe_status_code- Status code of the last probewebsocket_connections- Number of active WebSocket connections
🛠 Development
Building
bash
make build
Testing
bash
make test
Linting
bash
make lint
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🤝 Contributing
Contributions are welcome! Please read our contributing guidelines to get started.
Owner
- Name: Donald Johnson
- Login: copyleftdev
- Kind: user
- Location: Los Angeles
- Repositories: 39
- Profile: https://github.com/copyleftdev
GitHub Events
Total
- Push event: 1
- Create event: 2
Last Year
- Push event: 1
- Create event: 2
Dependencies
- alpine 3.19 build
- golang 1.21-alpine build
- github.com/beorn7/perks v1.0.1
- github.com/cespare/xxhash/v2 v2.2.0
- github.com/golang/protobuf v1.5.3
- github.com/matttproud/golang_protobuf_extensions v1.0.4
- github.com/prometheus/client_golang v1.17.0
- github.com/prometheus/client_model v0.4.1-0.20230718164431-9a2bf3000d16
- github.com/prometheus/common v0.44.0
- github.com/prometheus/procfs v0.11.1
- go.uber.org/multierr v1.10.0
- go.uber.org/zap v1.26.0
- golang.org/x/sync v0.5.0
- golang.org/x/sys v0.11.0
- golang.org/x/time v0.5.0
- google.golang.org/protobuf v1.31.0
- gopkg.in/yaml.v3 v3.0.1
- nhooyr.io/websocket v1.8.10
- github.com/beorn7/perks v1.0.1
- github.com/cespare/xxhash/v2 v2.2.0
- github.com/davecgh/go-spew v1.1.1
- github.com/golang/protobuf v1.2.0
- github.com/golang/protobuf v1.5.0
- github.com/golang/protobuf v1.5.3
- github.com/google/go-cmp v0.5.5
- github.com/google/go-cmp v0.5.9
- github.com/kr/pretty v0.3.1
- github.com/kr/text v0.2.0
- github.com/matttproud/golang_protobuf_extensions v1.0.4
- github.com/pmezard/go-difflib v1.0.0
- github.com/prometheus/client_golang v1.17.0
- github.com/prometheus/client_model v0.4.1-0.20230718164431-9a2bf3000d16
- github.com/prometheus/common v0.44.0
- github.com/prometheus/procfs v0.11.1
- github.com/rogpeppe/go-internal v1.10.0
- github.com/stretchr/testify v1.8.1
- go.uber.org/goleak v1.2.0
- go.uber.org/multierr v1.10.0
- go.uber.org/zap v1.26.0
- golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4
- golang.org/x/sync v0.5.0
- golang.org/x/sys v0.11.0
- golang.org/x/time v0.5.0
- golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543
- google.golang.org/protobuf v1.26.0-rc.1
- google.golang.org/protobuf v1.26.0
- google.golang.org/protobuf v1.31.0
- gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405
- gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c
- gopkg.in/yaml.v3 v3.0.1
- nhooyr.io/websocket v1.8.10