7.6 KiB
7.6 KiB
🚀 Endobest Dashboard - Quick Start Guide
Quick Reference for Running the Dashboard
⚡ 5-Minute Start
Prerequisites
- Python 3.7+
- Internet connection
- Valid Ziwig credentials
- Configuration file in
config/Endobest_Dashboard_Config.xlsx
Three Simple Ways to Run
1️⃣ Full Data Collection (Recommended)
python eb_dashboard.py
- ✅ Collects fresh data from all APIs
- ✅ Runs quality checks
- ✅ Generates JSON + Excel
- ⏱️ Takes 2.5-5 minutes
- 💡 Use this for: Regular data updates, first run
2️⃣ Excel Export Only (Fast)
python eb_dashboard.py --excel-only
- ✅ Uses existing JSON data
- ✅ Regenerates Excel files
- ✅ NO data collection
- ⏱️ Takes 5-15 seconds
- 💡 Use this for: Testing new Excel configs, quick re-export
3️⃣ Quality Check Only
python eb_dashboard.py --check-only
- ✅ Validates existing data
- ✅ Runs coherence + regression tests
- ✅ NO export
- ⏱️ Takes 5-10 seconds
- 💡 Use this for: Verify data before sharing
🔑 Default Credentials
The script uses built-in defaults (press Enter to accept):
Login: ziwig-invest2@yopmail.com
Password: pbrrA765$bP3beiuyuiyhiuy!agx
Number of threads: [1-20, default 12]
📁 What Gets Created
Output Files
your_directory/
├── endobest_inclusions.json (Patient data, ~6-7 MB)
├── endobest_inclusions_old.json (Backup from previous run)
├── endobest_organizations.json (Organization stats, ~17-20 KB)
├── endobest_organizations_old.json (Backup)
├── [Excel files] (If configured, e.g., Endobest_Output_2025-01-15.xlsx)
└── dashboard.log (Execution log)
File Locations
All files are created in the directory where you run the script.
⚙️ Configuration (Excel File)
File: config/Endobest_Dashboard_Config.xlsx
Tables Available
| Table | Purpose | When to Edit |
|---|---|---|
| Inclusions_Mapping | Define which patient fields to extract | When adding new fields to reports |
| Excel_Workbooks | Define Excel files to create | When changing workbook templates |
| Excel_Sheets | Configure data in Excel sheets | When modifying filters, sorts, column mapping |
| Regression_Check | Define quality check rules | When allowing new data changes |
Changes take effect on next run (no restart needed)
🔍 Monitoring Progress
During Execution
Overall Progress [████████████░░░░░░░░░░░░░░] 847/1200
1/15 - Center 1 [██████████░░░░░░░░░░░░░░░░] 73/95
2/15 - Center 2 [██████░░░░░░░░░░░░░░░░░░░░] 42/110
3/15 - Center 3 [████░░░░░░░░░░░░░░░░░░░░░░] 28/85
Checking Results
# View recent log entries
tail -n 50 dashboard.log
# Check for errors
grep ERROR dashboard.log
# View specific run
grep "2025-01-15" dashboard.log
✅ Quality Checks
Two Validation Types
1. Coherence Check
- Compares API statistics vs. actual collected data
- Example: API says 145 patients, but only found 143 records
- Action: Warns if discrepancy > 10%
2. Non-Regression Check
- Compares current data vs. previous run
- Detects unexpected changes
- Action: Warns if changes violate configured rules
What Happens if Issues Found
⚠ CRITICAL issues detected in quality checks!
Do you want to write the results anyway?
[Y/N]:
- YES → Continue with export (override)
- NO → Cancel export, keep previous files
🐛 Troubleshooting
"Login failed"
- Check credentials
- Verify internet connection
- Try again (sometimes transient network issue)
"Template file not found"
- Check
config/templates/folder - Verify filename matches Excel config exactly
"No data in Excel sheets"
- Check filter conditions aren't too strict
- Verify data exists: run
--check-onlyfirst - Check JSON files have content
"Script is slow"
- Increase worker threads (up to 20)
- Check internet bandwidth usage
- First run always slower (no optimization)
"Need detailed error info"
python eb_dashboard.py --debug
# Check dashboard.log for verbose output
📊 Sample Output
First 10 Lines of endobest_inclusions.json
[
{
"Patient_Identification": {
"Organisation_Id": "12345-uuid",
"Organisation_Name": "Hospital A",
"Center_Name": "HOSP-A",
"Patient_Id": "PAT-001",
"Pseudo": "ENDO-001",
"Patient_Name": "Doe, John",
"Patient_Birthday": "1975-05-15",
"Patient_Age": 49
},
"Inclusion": {
"Consent_Signed": true,
"Inclusion_Date": "15/10/2024",
...
📈 Performance Expectations
Typical Timings
| Operation | Small (50 orgs) | Medium (100+ orgs) | Large (200+ orgs) |
|---|---|---|---|
| Data Collection | 5-10 min | 10-20 min | 20-30 min |
| Quality Checks | 5-10 sec | 10-15 sec | 15-20 sec |
| Excel Export | 5-10 sec | 10-15 sec | 15-20 sec |
| TOTAL | 5-10 min | 10-20 min | 20-30 min |
Tip: Excel export is fast in --excel-only mode (5-15 seconds always)
🎯 Common Tasks
Task 1: Regular Data Collection
python eb_dashboard.py
# Full process: collect → checks → export
# Repeat weekly or as scheduled
Task 2: Reconfigure Excel Reports
# 1. Edit config/Endobest_Dashboard_Config.xlsx
# 2. Add/modify rows in Excel_Sheets table
# 3. Run fast export:
python eb_dashboard.py --excel-only
# New Excel files generated in seconds
Task 3: Verify Data Quality
python eb_dashboard.py --check-only
# Runs validation without modifying files
# Great for pre-distribution checks
Task 4: Debug Issues
python eb_dashboard.py --debug
# Verbose logging sent to dashboard.log
# Check log for detailed error information
📚 Next Steps
For Basic Usage
→ See DOCUMENTATION_98_USER_GUIDE.md
For Configuration Details
→ See DOCUMENTATION_99_CONFIG_GUIDE.md
For Field Mapping
→ See DOCUMENTATION_11_FIELD_MAPPING.md
For Excel Export
→ See DOCUMENTATION_13_EXCEL_EXPORT.md
For Architecture Understanding
→ See DOCUMENTATION_10_ARCHITECTURE.md
🆘 Emergency Contacts / Support
Check Documentation First
- This Quick Start - Common questions
- DOCUMENTATION_98_USER_GUIDE.md - FAQ section
- dashboard.log - Error details
Common Issue Solutions
| Issue | Solution |
|---|---|
| Script hangs | Press Ctrl+C, check network |
| Login fails | Verify credentials, check internet |
| Slow collection | Increase worker threads (up to 20) |
| Excel template issues | Check config/templates/ folder |
| Quality check warnings | Review regression config rules |
⚡ Pro Tips
- First Run: Always run full collection, even if slow
- Testing Configs: Use
--excel_onlyfor quick feedback - Batch Processing: Schedule with task scheduler or cron
- Performance: More threads = faster (but check bandwidth)
- Backups: Old JSON files kept automatically (
_oldsuffix)
🔐 Data Privacy
⚠️ Important:
- JSON files contain patient data
- Keep files in secure location
- Delete backups if not needed
- Follow hospital/research protocols
For complete technical details, see DOCUMENTATION_30_ARCHITECTURE_SUMMARY.md
Questions? Check the comprehensive documentation in the project folder.