{"level":"info","timestamp":"2026-06-03T16:28:14.143Z","caller":"cmd/main.go:61","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-03T16:28:14.233Z","caller":"cmd/main.go:137","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-06-03T16:28:14.248Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":3} {"level":"info","timestamp":"2026-06-03T16:28:14.248Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-06-03T16:28:14.349Z","caller":"cmd/main.go:105","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/03 - 16:28:20 | 200 | 62.164µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:25 | 200 | 36.25µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:30 | 200 | 30.703µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:35 | 200 | 35.477µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:40 | 200 | 25.587µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:45 | 200 | 26.014µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:50 | 200 | 26.237µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:51 | 200 | 26.623µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:28:55 | 200 | 29.3µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:00 | 200 | 36.982µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:01 | 200 | 28.688µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:05 | 200 | 29.904µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:10 | 200 | 30.605µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:11 | 200 | 74.637µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:15 | 200 | 26.39µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:20 | 200 | 26.973µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:21 | 200 | 29.514µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:25 | 200 | 28.249µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:30 | 200 | 40.557µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:31 | 200 | 35.288µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:35 | 200 | 25.042µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:40 | 200 | 31.025µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:41 | 200 | 26.73µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:45 | 200 | 26.042µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:50 | 200 | 27.162µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:51 | 200 | 45.507µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:29:55 | 200 | 25.373µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:00 | 200 | 27.776µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:01 | 200 | 26.784µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:05 | 200 | 36.602µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:10 | 200 | 28.484µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:11 | 200 | 34.069µs | 10.132.0.2 | GET "/health" {"level":"info","timestamp":"2026-06-03T16:30:15.153Z","caller":"api_keys/service.go:305","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/06/03 - 16:30:15 | 200 | 9.525983ms | 10.134.0.31 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/06/03 - 16:30:15 | 200 | 26.132µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:20 | 200 | 28.846µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:21 | 200 | 32.741µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:25 | 200 | 28.971µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:30 | 200 | 27.295µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:31 | 200 | 27.872µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:35 | 200 | 30.258µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:40 | 200 | 25.436µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:41 | 200 | 66.089µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:45 | 200 | 33.744µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:50 | 200 | 31.422µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:51 | 200 | 29.643µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:30:55 | 200 | 40.708µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:00 | 200 | 27.962µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:01 | 200 | 28.913µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:05 | 200 | 28.57µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:10 | 200 | 30.715µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:11 | 200 | 29.609µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:15 | 200 | 26.883µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:20 | 200 | 27.832µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:21 | 200 | 31.222µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:25 | 200 | 33.254µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:30 | 200 | 38.177µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:31 | 200 | 25.368µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:35 | 200 | 44.026µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:40 | 200 | 26.173µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:41 | 200 | 25.054µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:45 | 200 | 29.3µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:50 | 200 | 23.894µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:51 | 200 | 24.815µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:31:55 | 200 | 28.007µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:00 | 200 | 27.333µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:01 | 200 | 26.657µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:05 | 200 | 27.137µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:10 | 200 | 29.475µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:11 | 200 | 26.59µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:15 | 200 | 29.527µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:20 | 200 | 25.531µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:21 | 200 | 30.383µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:25 | 200 | 34.81µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:30 | 200 | 27.108µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:31 | 200 | 24.561µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:35 | 200 | 24.714µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:40 | 200 | 29.851µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:41 | 200 | 30.956µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:45 | 200 | 35.33µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:50 | 200 | 29.647µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:51 | 200 | 26.19µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:32:55 | 200 | 25.771µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:00 | 200 | 30.881µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:01 | 200 | 29.07µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:05 | 200 | 27.431µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:10 | 200 | 33.587µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:11 | 200 | 28.101µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:15 | 200 | 35.444µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:20 | 200 | 25.038µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:21 | 200 | 26.672µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:25 | 200 | 26.712µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:30 | 200 | 25.474µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:31 | 200 | 36.418µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:35 | 200 | 25.728µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:40 | 200 | 28.389µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:41 | 200 | 30.95µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/03 - 16:33:45 | 200 | 28.229µs | 10.132.0.2 | GET "/health"