Ask Bjørn Hansen
96afb77844
database: create shared database package with configurable patterns
Extract ~200 lines of duplicate database connection code from api/ntpdb/
and monitor/ntpdb/ into common/database/ package. Creates foundation for
database consolidation while maintaining zero breaking changes.
Files added:
- config.go: Unified configuration with package-specific defaults
- connector.go: Dynamic connector pattern from Boostport
- pool.go: Configurable connection pool management
- metrics.go: Optional Prometheus metrics integration
- interfaces.go: Shared database interfaces for consistent patterns
Key features:
- Configuration-driven approach (API: 25/10 connections + metrics,
Monitor: 10/5 connections, no metrics)
- Optional Prometheus metrics when registerer provided
- Backward compatibility via convenience functions
- Flexible config file loading (explicit paths + search-based)
Dependencies: Added mysql driver and yaml parsing for database configuration.
2025-07-12 16:54:24 -07:00
..
2025-07-12 16:54:24 -07:00
2025-07-12 16:54:24 -07:00
2025-07-12 16:54:24 -07:00
2025-07-12 16:54:24 -07:00
2025-07-12 16:54:24 -07:00
2025-07-12 13:57:27 -07:00