Comprehensive health monitoring for Streamlit apps: system, dependencies, custom checks, and page errors.
Project description
Streamlit HealthCheck
Monitor, visualize, and manage the health of your Streamlit multi-page applications with ease.
Overview
Streamlit HealthCheck is a comprehensive health monitoring solution for Streamlit apps. It tracks system resources, external dependencies, and custom application checks, providing a real-time dashboard for operational insights and troubleshooting.
- System Resource Monitoring: CPU, memory, disk usage with configurable thresholds.
- Dependency Checks: API endpoints and database connectivity status.
- Custom Health Checks: Easily register and visualize custom checks for your app.
- Streamlit Page Error Tracking: Detects exceptions and
st.errorcalls across pages. - Live Dashboard: Interactive Streamlit UI with tabs for system, dependencies, custom checks, and page errors.
- Configurable: All checks and thresholds are managed via a simple JSON config file.
Quickstart
# Install the library from pip
pip install streamlit_healthcheck
# Run the demo Streamlit application which includes a dashboard
streamlit run status_page/Home.py
Features
| Feature | Description |
|---|---|
| System Health | Monitors CPU, memory, disk usage with warning/critical thresholds |
| Dependency Checks | Verifies API endpoints and database connections |
| Custom Checks | Register custom health checks for your app logic |
| Page Error Tracking | Captures exceptions and Streamlit errors per page |
| Live Dashboard | Interactive UI with tabs and status indicators |
| Configurable | JSON-based config for checks and thresholds |
Configuration
All health check settings are managed via config/health_check_config.json. You can customize:
- Check intervals
- System resource thresholds
- API endpoints and database connections
- Custom checks
[!TIP] Use the dashboard's configuration expander to adjust thresholds and save changes on the fly.
Project Structure
src/streamlit_healthcheck/ # Core healthcheck logic
status_page/ # Streamlit UI pages
config/health_check_config.json # Health check configuration
requirements.txt # Python dependencies
Makefile # Build and test commands
tests/ # Unit tests
Troubleshooting
[!WARNING] If the dashboard reports a "critical" status, check the error details in the relevant tab. For API/database issues, verify connectivity and credentials. For system resource alerts, consider scaling your infrastructure.
Getting Help
Badges
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file streamlit_healthcheck-0.1.dev51.tar.gz.
File metadata
- Download URL: streamlit_healthcheck-0.1.dev51.tar.gz
- Upload date:
- Size: 198.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ae1138d9c8e4eb29eb27c6bd80e635bd920c5eccd88402ceb0d0ad7abf040ea
|
|
| MD5 |
580604fdc3af467a86ee0fbeada055f1
|
|
| BLAKE2b-256 |
33b86cc3568108a362eb97aa79762d6ce0b1da4ed07a99a978884d9f15a4bcd7
|
File details
Details for the file streamlit_healthcheck-0.1.dev51-py3-none-any.whl.
File metadata
- Download URL: streamlit_healthcheck-0.1.dev51-py3-none-any.whl
- Upload date:
- Size: 30.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50f574fb22fac735003c22d80a0540653897eaee8cc5f9afdd0ee22e943eb93e
|
|
| MD5 |
870d01ae0eea54dd3524b5c199adbee2
|
|
| BLAKE2b-256 |
67f8454a5b4b3e57486238ee098ed8ff516dfe168b3d9666873bc7d9c0f7ab52
|