Commit Graph

86 Commits

Author SHA1 Message Date
ask 6a3bc7bab3 feat(logger): add buffering exporter with TLS support for OTLP logs
Add buffering exporter to queue OTLP logs until tracing is configured.
Support TLS configuration for OpenTelemetry log export with client
certificate authentication. Improve logfmt formatting and tracing setup.
2025-07-27 16:36:18 -07:00
ask da13a371b4 feat(database): add shared transaction helpers
Add transaction base utilities with Begin, Commit, and Rollback
functions supporting both sql.DB and sql.Tx interfaces.
v0.5.0
2025-07-12 23:52:48 -07:00
ask a1a5a6b8be database: create shared database package
Extract common database functionality from api/ntpdb and monitor/ntpdb
into shared common/database package:

- Dynamic connector pattern with configuration loading
- Configurable connection pool management (API: 25/10, Monitor: 10/5)
- Optional Prometheus metrics integration
- Generic transaction helpers with proper error handling
- Unified interfaces compatible with SQLC-generated code

Foundation for migration to eliminate ~200 lines of duplicate code.
2025-07-12 17:59:28 -07:00
ask 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
ask c372d79d1d build: goreleaser 2.11.0 and download script tweaks 2025-07-12 16:51:10 -07:00
ask b5141d6a70 Add database transaction helpers 2025-07-12 13:57:27 -07:00
ask 694f8ba1d3 Add comprehensive godoc documentation to all packages
- Add package-level documentation with usage examples and architecture details
- Document all public types, functions, and methods following godoc conventions
- Remove unused logger.Error type and NewError function
- Apply consistent documentation style across all packages

Packages updated:
- apitls: TLS certificate management with automatic renewal
- config: Environment-based configuration system
- config/depenv: Deployment environment handling
- ekko: Enhanced Echo web framework wrapper
- kafka: Kafka client wrapper with TLS support
- logger: Structured logging with OpenTelemetry integration
- tracing: OpenTelemetry distributed tracing setup
- types: Shared data structures for NTP Pool project
- xff/fastlyxff: Fastly CDN IP range management

All tests pass after documentation changes.
v0.4.3
2025-06-19 23:52:03 -07:00
ask 09b52f92d7 version: add documentation and tests v0.4.2 2025-06-06 20:19:08 -07:00
ask 785abdec8d ulid: simplify, add function without a timestamp 2025-06-06 20:02:23 -07:00
ask ce203a4618 Add README 2025-06-06 19:56:43 -07:00
ask 3c994a7343 Add copilot/claude instructions 2025-06-06 19:50:30 -07:00
ask f69c3e9c3c ulid: add documentation and more tests 2025-06-06 19:31:28 -07:00
ask fac5b1f275 metrics: add tests and documentation 2025-06-06 19:24:30 -07:00
ask a37559b93e health: add documentation 2025-06-06 19:16:14 -07:00
ask faac09ac0c timeutil: Add documentation 2025-06-06 19:08:16 -07:00
ask 62a7605869 config: add depenv.MonitorDomain() and config.ManageURL() methods v0.4.1 2025-04-19 23:07:08 -07:00
ask 0996167865 modernize + gofumpt 2025-04-19 22:19:02 -07:00
ask 87344dd601 version: KongVersionCmd type v0.4.0 2025-04-12 00:24:19 -07:00
ask 39e6611602 build: update goreleaser 2025-04-12 00:23:33 -07:00
ask 355d246010 depenv: implement UnmarshalText 2025-04-12 00:22:57 -07:00
ask e5836a8b97 depenv: ntppool configuration for deployment environments 2025-01-26 11:08:44 -08:00
ask f6d160a7f8 health: fix shutdown of health check server 2025-01-03 14:01:52 +01:00
ask 9e2d6fb74e Update dependencies v0.3.1 2024-12-27 18:39:48 -08:00
ask 0df1154bb5 Update goreleaser to 2.5.0 2024-12-21 08:55:17 -08:00
ask b926a85737 ekko: gzip config option 2024-12-01 16:45:49 -08:00
ask 68bd4d8904 ekko: configurable read write and readheader timeouts 2024-11-26 01:04:34 -08:00
ask 152be9d956 logger: otlp support v0.3.0 2024-11-09 10:59:11 +00:00
ask ab94adb925 tracing: setup log provider 2024-11-09 10:19:16 +00:00
ask ddb56b3566 ekko: Add WithLogFilters option 2024-10-12 11:39:16 -07:00
ask 4367ef9c29 Add Fatalf to standard logger-ish 2024-10-12 11:11:50 -07:00
ask d6a77f4003 ekko: add gzip, move recover middleware to run early v0.2.13 2024-09-21 00:53:10 -07:00
ask 3f3fb29bc9 ekko: helper to setup labstack echo with logging, tracing, etc 2024-09-20 21:47:10 -07:00
ask 8e898d9c59 tracing: refactor code, support more exporters with default environment configuration 2024-09-14 00:47:07 -07:00
ask 1ecd5684e6 version: Add CheckVersion() function v0.2.12 2024-08-18 18:11:17 -07:00
ask 59580b50ba scripts: update goreleaser v0.2.11 2024-07-07 13:05:06 -07:00
ask 9a86b2aaf5 tracing: semconv v1.26.0 2024-07-06 13:04:48 -07:00
ask bcf7232154 Update dependencies + otel schema 1.25 v0.2.10 2024-06-08 00:14:42 -07:00
ask 9934dc8e36 Update Go, slog-otel, prometheus client v0.2.9 2024-04-06 09:42:41 -07:00
ask a458dcb226 tracing: add EndpointURL option 2024-03-16 10:40:43 -07:00
ask 4ed44c72a4 Update dependencies v0.2.8 2024-03-09 21:57:46 -08:00
ask 8a8ff93996 scripts: goreleaser 1.24.0 2024-02-10 19:10:01 -08:00
ask 1e8785bd32 version: fix metric name for services with dash in the name 2024-02-03 00:21:31 -08:00
ask 5aeaa97c6f Add BSD license
(for pkg.go.dev)
2024-01-20 11:48:32 -07:00
ask df2285d355 tracing: update semconv, better error checking v0.2.7 2024-01-19 22:59:29 -08:00
ask 232a6f98df tracing: add minimal test 2024-01-19 22:48:14 -08:00
ask 4f6b09200f Update dependencies v0.2.6 2024-01-12 23:12:15 -08:00
ask 7085202154 Update goreleaser 2024-01-12 22:17:07 -08:00
ask 5c7ae6ab8a Basic config package to parse NTP Pool system config 2023-12-10 20:43:38 -08:00
ask 608f05d395 types: shared data types 2023-12-10 19:16:13 -08:00
ask b5420f9dbd build: private repository support for drone / goreleaser 2023-12-10 19:15:49 -08:00