Add monitoring service and database schema

- Implement monitoring service with heartbeat, lease tasks, resume tasks, and task result handling.
- Create monitoring time utilities for business date calculations.
- Add unit tests for date window resolution and business day handling.
- Define database schema for monitoring-related tables including quotas, daily reports, and task management.
- Establish migration scripts for creating and dropping monitoring tables.
This commit is contained in:
2026-04-12 09:56:18 +08:00
parent 9b4dd09780
commit 6066f43a7d
67 changed files with 16312 additions and 125 deletions
+22
View File
@@ -12,6 +12,28 @@ database:
password: geo_dev
dbname: geo
monitoring_database:
host: localhost
port: 5433
user: geo
password: geo_dev
dbname: geo_monitoring
sslmode: disable
max_open_conns: 25
max_idle_conns: 5
rabbitmq:
url: amqp://geo:geo_dev@localhost:5672/geo
monitor_result_exchange: monitor.result
monitor_result_routing_key: monitor.result.ingest
monitor_result_queue: monitor.result.ingest
monitor_result_dlx: monitor.result.dlx
monitor_result_dlq: monitor.result.ingest.dlq
monitor_result_dlq_routing_key: monitor.result.ingest.dlq
consumer_prefetch: 10
# Prefer environment override when needed:
# export RABBITMQ_URL=amqp://geo:geo_dev@localhost:5672/geo
redis:
addr: localhost:6379