4-Virus Surveillance
Real-time monitoring system for Hantavirus, Polyomavirus, Spumavirus, and EEEV in Japanese pig populations.
Integrated Monitoring
Target Viruses
Hantavirus
ハンタウイルス
Polyomavirus
ポリオーマウイルス
Spumavirus
スピューマウイルス
EEEV
東部ウマ脳炎ウイルス
External Information Sources
Daily Monitoring Sources
Automated collection at 11:00 JST (02:00 UTC)
MAFF
Ministry of Agriculture, Forestry and Fisheries
E-Stat
Government Statistics Portal
PubMed
NCBI PubMed Database
J-STAGE
Japan Science and Technology
Severity Classification
CRITICAL
Criteria:
Spumavirus >500 copies/mL, ANY EEEV detection
Actions:
HIGH
Criteria:
Hantavirus >100 copies/mL, Polyomavirus >100 copies/mL
Actions:
MEDIUM
Criteria:
External keyword match, Low-level detections
Actions:
LOW
Criteria:
Academic publications, Informational
Actions:
System Architecture
Data Flow
Dual-source monitoring with severity-based alerting
External Sources (Daily) Internal Pipeline (Real-time)
↓ ↓
Lambda Collector S3 Event Trigger
↓ ↓
DynamoDB ←──────────────────── Lambda Listener
↓
Severity Engine
↓
Notification Router
├─ SNS/SES (Email/SMS)
├─ Slack (Bot API + Webhooks)
├─ Streamlit Dashboard
└─ REST APISystem Components
Alerting
• AWS SNS Topics
• SES Email Templates
• SMS for Critical
• Deduplication (1h)
Slack Integration
• Bot API + Webhooks
• Rich Block Kit Format
• Channel Routing
• Daily Summaries
Dashboard
• Streamlit UI
• Real-time Updates (30s)
• Plotly Charts
• Trend Analysis
Storage
• DynamoDB Tables (3)
• S3 Data Lake
• TTL: 24h (J-STAGE ToS)
• Point-in-Time Recovery
Quick Start
Launch Dashboard
streamlit run surveillance/dashboard/app.py
# Access: http://localhost:8501Start REST API
uvicorn surveillance.api.main:app --reload --port 8000
# API Docs: http://localhost:8000/docsManual Collection Test
# Test PubMed + J-STAGE search
python surveillance/external/academic_monitor.py
# Test MAFF scraping
python -m surveillance.external.maff_scraper
# Test E-Stat API
python -m surveillance.external.estat_clientSlack Notification Setup
# Configure Slack credentials
cp surveillance/.env.template surveillance/.env
# Edit .env with your Slack Bot Token
# Test Slack connection
python surveillance/tests/test_slack_integration.py --test-conn
# Send test alerts
python surveillance/tests/test_slack_integration.py --test-alertAPI Endpoints
REST API (FastAPI)
Programmatic access to surveillance data