ferrero-opentext/Python-Version/scripts/shared
DJP c720759cc7 Add daily summary report with comprehensive statistics
Automated daily report that analyzes all workflow logs and sends email summary at 7pm.

NEW SCRIPT: daily_report.py
- Analyzes last 24 hours of all workflow logs
- Parses campaign and asset statistics
- Extracts error messages
- Sends comprehensive email report
- Run via cron at 7pm daily

FEATURES:
✓ Overall summary statistics across all workflows
✓ Per-workflow breakdown (A1→A2, A2→A3, A5→A6, B1→B2)
✓ Success rate calculation
✓ Campaign details with status (completed/partial/no_assets)
✓ Error log extraction
✓ Collapsible sections for campaign and error details
✓ Color-coded metrics (green=good, orange=warning, red=error)

STATISTICS TRACKED:
- Campaigns found/processed/completed/partial
- Total assets processed/successful/failed
- NOT APPROVED assets (A5→A6)
- Skipped assets (approved items)
- Success rate percentage
- Error count and messages

EMAIL TEMPLATE: daily_report
- Blue theme (#1976d2)
- Grid layout for statistics
- Collapsible campaign details
- Collapsible error logs (max 10 shown)
- Professional dashboard-style formatting

USAGE:
  python scripts/daily_report.py

CRON SCHEDULE (7pm daily):
  0 19 * * * cd ~/Python-Version && venv/bin/python scripts/daily_report.py >> logs/daily_report.log 2>&1

TESTED:
✓ Successfully parsed all 4 workflow logs
✓ Found 26 campaigns, 58 assets from last 24 hours
✓ Email sent successfully with all statistics
✓ Success rate: 48.3% (from test data)
✓ Error extraction working

Changes:
- NEW: scripts/daily_report.py (241 lines)
- EDIT: shared/notifier.py (add daily_report template)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-04 16:34:44 -05:00
..
__pycache__ Add HANDOFF_NEXT_SESSION.md - Complete session handoff document 2025-11-04 12:30:36 -05:00
__init__.py Start Python automation - Foundation components 2025-10-30 16:38:26 -04:00
box_client.py Add recursive folder search, NOT APPROVED filtering, and rejection details for A5→A6 2025-11-04 14:49:19 -05:00
config_loader.py Start Python automation - Foundation components 2025-10-30 16:38:26 -04:00
dam_client.py Add recursive folder search, NOT APPROVED filtering, and rejection details for A5→A6 2025-11-04 14:49:19 -05:00
database.py Add A5→A6 rework workflow automation (Python) 2025-11-04 13:36:35 -05:00
filename_parser.py Complete Python automation implementation - All components built 2025-10-30 16:49:14 -04:00
metadata_extractor_mvp.py Add Box metadata extraction for CreativeX fields in A2→A3 workflow 2025-11-03 14:26:00 -05:00
notifier.py Add daily summary report with comprehensive statistics 2025-11-04 16:34:44 -05:00