Initial commit: Yodmon Yodeck→Zabbix bridge

- Yodeck API poller (every 10 min, paginated, 310 players)
- SQLite persistence (players + activity logs)
- SNMP v2c agent via net-snmp pass_persist
- Zabbix API auto host creation/update (6.0+)
- Flask web dashboard with live player status and log
- Docker deployment with persistent volume
- dev_server.py for local testing without Docker

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-17 09:31:00 +02:00
commit 9fc3e97546
18 changed files with 1027 additions and 0 deletions

19
main.py Normal file
View File

@@ -0,0 +1,19 @@
import logging
import os
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s %(levelname)s %(name)s: %(message)s',
)
from app.config import WEB_PORT, DB_PATH
from app.database import init_db
from app.scheduler import start_scheduler
from app.web import create_app
if __name__ == '__main__':
os.makedirs(os.path.dirname(os.path.abspath(DB_PATH)), exist_ok=True)
init_db()
start_scheduler()
flask_app = create_app()
flask_app.run(host='0.0.0.0', port=WEB_PORT, use_reloader=False)