{"level":"info","timestamp":"2026-06-03T14:06:18.487Z","caller":"cmd/main.go:65","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-03T14:06:18.502Z","caller":"cmd/main.go:172","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-06-03T14:06:18.502Z","caller":"cmd/main.go:101","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-06-03T14:06:18.633Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":3} {"level":"info","timestamp":"2026-06-03T14:06:18.633Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-06-03T14:06:18.738Z","caller":"cmd/main.go:193","message":"Resolved gateway internal host for access probes","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local"} {"level":"info","timestamp":"2026-06-03T14:06:18.786Z","caller":"cmd/main.go:134","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/03 - 14:06:25 | 200 | 64.724µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:30 | 200 | 36.352µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:35 | 200 | 43.324µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:40 | 200 | 32.497µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:45 | 200 | 48.094µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:50 | 200 | 42.354µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:55 | 200 | 35.784µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:06:56 | 200 | 39.055µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:00 | 200 | 38.535µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:05 | 200 | 34.035µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:06 | 200 | 40.075µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:10 | 200 | 33.597µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:15 | 200 | 35.709µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:16 | 200 | 35.557µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:20 | 200 | 34.57µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:25 | 200 | 34.359µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:26 | 200 | 33.447µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:30 | 200 | 33.283µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:35 | 200 | 42.181µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:36 | 200 | 34.002µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:40 | 200 | 33.555µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:45 | 200 | 44.958µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:46 | 200 | 32.946µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:50 | 200 | 31.74µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:55 | 200 | 32.645µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:07:56 | 200 | 32.438µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:00 | 200 | 38.427µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:05 | 200 | 46.216µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:06 | 200 | 44.262µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:10 | 200 | 42.264µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:15 | 200 | 35.294µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:16 | 200 | 33.021µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:20 | 200 | 36.661µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:25 | 200 | 45.744µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:26 | 200 | 34.031µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:30 | 200 | 32.994µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:35 | 200 | 62.198µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:36 | 200 | 35.572µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:40 | 200 | 32.323µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:45 | 200 | 32.83µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:46 | 200 | 34.404µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:50 | 200 | 57.999µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:55 | 200 | 40.367µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:08:56 | 200 | 34.575µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:00 | 200 | 35.611µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:05 | 200 | 41.01µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:06 | 200 | 50.716µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:10 | 200 | 33.509µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:15 | 200 | 42.532µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:16 | 200 | 37.28µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:20 | 200 | 36.608µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:25 | 200 | 61.01µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:26 | 200 | 33.654µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:30 | 200 | 34.353µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:35 | 200 | 36.547µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:36 | 200 | 36.397µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:40 | 200 | 42.6µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:45 | 200 | 32.875µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:46 | 200 | 33.219µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:50 | 200 | 32.964µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:55 | 200 | 33.945µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:09:56 | 200 | 39.243µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:00 | 200 | 42.934µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:05 | 200 | 33.983µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:06 | 200 | 34.738µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:10 | 200 | 43.198µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:15 | 200 | 34.251µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:16 | 200 | 42.181µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:20 | 200 | 39.559µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:25 | 200 | 49.813µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:26 | 200 | 52.414µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:30 | 200 | 58.21µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:35 | 200 | 49.436µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:36 | 200 | 40.328µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:40 | 200 | 44.902µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:45 | 200 | 44.289µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:46 | 200 | 47.704µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:50 | 200 | 41.838µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:55 | 200 | 44.626µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:10:56 | 200 | 42.451µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:00 | 200 | 56.262µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:05 | 200 | 56.495µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:06 | 200 | 41.244µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:10 | 200 | 42.444µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:15 | 200 | 39.365µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:16 | 200 | 46.997µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:20 | 200 | 72.891µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:25 | 200 | 39.811µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:26 | 200 | 49.592µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:30 | 200 | 40.3µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:35 | 200 | 41.262µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:36 | 200 | 39.757µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:40 | 200 | 44.787µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:45 | 200 | 51.215µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:46 | 200 | 42.056µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:50 | 200 | 43.811µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:55 | 200 | 39.395µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:11:56 | 200 | 48.359µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:00 | 200 | 51.474µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:05 | 200 | 42.749µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:06 | 200 | 38.431µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:10 | 200 | 42.5µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:15 | 200 | 47.518µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:16 | 200 | 51.036µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:20 | 200 | 40.563µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:25 | 200 | 44.178µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:26 | 200 | 33.684µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:30 | 200 | 50.525µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:35 | 200 | 36.738µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:36 | 200 | 34.274µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:40 | 200 | 46.774µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:45 | 200 | 33.307µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:46 | 200 | 37.394µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:50 | 200 | 33.671µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:55 | 200 | 33.273µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:12:56 | 200 | 32.776µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:00 | 200 | 70.514µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:05 | 200 | 33.926µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:06 | 200 | 32.736µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:10 | 200 | 33.798µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:15 | 200 | 42.833µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:16 | 200 | 33.846µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:20 | 200 | 37.117µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:25 | 200 | 32.192µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:26 | 200 | 37.373µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:30 | 200 | 49.925µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:35 | 200 | 37.681µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:36 | 200 | 38.165µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:40 | 200 | 32.876µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:45 | 200 | 34.671µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:46 | 200 | 37.234µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:50 | 200 | 34.398µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:55 | 200 | 33.381µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:13:56 | 200 | 34.808µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:00 | 200 | 35.627µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:05 | 200 | 53.634µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:06 | 200 | 33.002µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:10 | 200 | 44.488µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:15 | 200 | 40.932µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:16 | 200 | 35.054µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:20 | 200 | 35.724µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:25 | 200 | 42.424µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:26 | 200 | 44.06µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:30 | 200 | 39.826µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:35 | 200 | 40.243µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:36 | 200 | 49.217µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:40 | 200 | 42.012µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:45 | 200 | 38.426µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:46 | 200 | 41.805µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:50 | 200 | 38.621µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:55 | 200 | 40.414µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:14:56 | 200 | 40.425µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:00 | 200 | 39.407µs | 10.134.0.2 | GET "/health" {"level":"info","timestamp":"2026-06-03T14:15:04.248Z","caller":"api_keys/service.go:305","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/06/03 - 14:15:04 | 200 | 8.96893ms | 10.133.0.52 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/06/03 - 14:15:05 | 200 | 44.001µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:06 | 200 | 40.448µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:10 | 200 | 50.221µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:15 | 200 | 43.841µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:16 | 200 | 46.087µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:20 | 200 | 54.559µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/03 - 14:15:25 | 200 | 53.759µs | 10.134.0.2 | GET "/health"