{"level":"info","timestamp":"2026-04-17T14:45:21.837Z","caller":"cmd/main.go:60","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-04-17T14:45:21.872Z","caller":"cmd/main.go:136","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-04-17T14:45:21.940Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":3} {"level":"info","timestamp":"2026-04-17T14:45:21.940Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-04-17T14:45:22.041Z","caller":"cmd/main.go:104","message":"Server starting","address":":8443","secure":true} [GIN] 2026/04/17 - 14:45:28 | 200 | 43.407µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:33 | 200 | 27.04µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:38 | 200 | 27.746µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:43 | 200 | 24.593µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:48 | 200 | 29.545µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:53 | 200 | 30.337µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:58 | 200 | 42.192µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:45:59 | 200 | 26.847µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:03 | 200 | 27.993µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:08 | 200 | 24.77µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:09 | 200 | 25.135µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:13 | 200 | 25.142µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:18 | 200 | 24.832µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:19 | 200 | 30.451µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:23 | 200 | 25.256µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:28 | 200 | 35.929µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:29 | 200 | 31.76µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:33 | 200 | 25.813µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:38 | 200 | 26.641µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:39 | 200 | 42.201µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:43 | 200 | 31.799µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:48 | 200 | 25.467µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:49 | 200 | 25.915µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:53 | 200 | 25.005µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:58 | 200 | 37.4µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:46:59 | 200 | 24.311µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:03 | 200 | 24.534µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:08 | 200 | 28.16µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:09 | 200 | 28.151µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:13 | 200 | 29.656µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:18 | 200 | 32.653µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:19 | 200 | 29.579µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:23 | 200 | 33.127µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:28 | 200 | 28.771µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:29 | 200 | 35.496µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:33 | 200 | 34.531µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:38 | 200 | 24.094µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:39 | 200 | 28.608µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:43 | 200 | 29.695µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:48 | 200 | 24.802µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:49 | 200 | 35.407µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:53 | 200 | 27.806µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:58 | 200 | 25.814µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:47:59 | 200 | 27.028µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:03 | 200 | 29.496µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:08 | 200 | 26.571µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:09 | 200 | 29.858µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:13 | 200 | 25.087µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:18 | 200 | 27.397µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:19 | 200 | 26.096µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:23 | 200 | 29.327µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:28 | 200 | 24.932µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:29 | 200 | 31.581µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:33 | 200 | 36.162µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:38 | 200 | 25.191µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:39 | 200 | 24.872µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:43 | 200 | 26.505µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:48 | 200 | 29.005µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:49 | 200 | 26.681µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:53 | 200 | 26.19µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:58 | 200 | 38.386µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:48:59 | 200 | 27.826µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:03 | 200 | 25.622µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:08 | 200 | 27.934µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:09 | 200 | 36.352µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:13 | 200 | 35.843µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:18 | 200 | 31.797µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:19 | 200 | 31.999µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:23 | 200 | 32.169µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:28 | 200 | 41.282µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:29 | 200 | 34.733µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:33 | 200 | 33.907µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:38 | 200 | 38.482µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:39 | 200 | 30.371µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:43 | 200 | 36.645µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:48 | 200 | 34.591µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:49 | 200 | 34.188µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:53 | 200 | 38.783µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:58 | 200 | 34.113µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:49:59 | 200 | 30.303µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:03 | 200 | 33.27µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:08 | 200 | 42.721µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:09 | 200 | 34.811µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:13 | 200 | 37.672µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:18 | 200 | 35.554µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:19 | 200 | 35.543µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:23 | 200 | 35.81µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:28 | 200 | 31.423µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:29 | 200 | 32.961µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:33 | 200 | 31.763µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:38 | 200 | 31.165µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:39 | 200 | 31.304µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:43 | 200 | 32.303µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:48 | 200 | 37.037µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:49 | 200 | 31.873µs | 10.133.0.2 | GET "/health" [GIN] 2026/04/17 - 14:50:53 | 200 | 33.732µs | 10.133.0.2 | GET "/health"