{"level":"info","timestamp":"2026-06-02T15:38:41.545Z","caller":"cmd/main.go:65","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-02T15:38:41.559Z","caller":"cmd/main.go:172","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-06-02T15:38:41.559Z","caller":"cmd/main.go:101","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-06-02T15:38:41.712Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":3} {"level":"info","timestamp":"2026-06-02T15:38:41.712Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-06-02T15:38:41.819Z","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-02T15:38:41.839Z","caller":"cmd/main.go:134","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/02 - 15:38:48 | 200 | 46.552µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:38:53 | 200 | 36.404µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:38:58 | 200 | 40.88µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:03 | 200 | 36.426µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:08 | 200 | 44.148µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:13 | 200 | 37.504µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:18 | 200 | 34.372µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:19 | 200 | 38.629µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:23 | 200 | 32.547µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:28 | 200 | 43.101µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:29 | 200 | 40.638µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:33 | 200 | 35.842µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:38 | 200 | 34.185µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:39 | 200 | 74.626µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:43 | 200 | 42.036µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:48 | 200 | 40.924µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:49 | 200 | 34.613µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:53 | 200 | 33.907µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:58 | 200 | 32.268µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:39:59 | 200 | 37.796µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:03 | 200 | 36.496µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:08 | 200 | 34.496µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:09 | 200 | 37.797µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:13 | 200 | 34.425µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:18 | 200 | 34.199µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:19 | 200 | 36.629µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:23 | 200 | 31.724µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:28 | 200 | 38.178µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:29 | 200 | 41.672µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:33 | 200 | 31.918µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:38 | 200 | 42.158µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:39 | 200 | 39.993µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:43 | 200 | 34.376µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:48 | 200 | 33.324µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:49 | 200 | 39.541µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:53 | 200 | 35.12µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:58 | 200 | 40.527µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:40:59 | 200 | 54.032µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:03 | 200 | 40.53µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:08 | 200 | 32.14µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:09 | 200 | 35.781µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:13 | 200 | 37.611µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:18 | 200 | 40.283µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:19 | 200 | 48.496µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:23 | 200 | 43.489µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:28 | 200 | 36.573µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:29 | 200 | 40.003µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:33 | 200 | 41.418µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:38 | 200 | 40.596µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:39 | 200 | 55.562µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:43 | 200 | 37.964µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:48 | 200 | 35.337µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:49 | 200 | 38.794µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:53 | 200 | 47.271µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:58 | 200 | 41.432µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:41:59 | 200 | 33.77µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:03 | 200 | 45.611µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:08 | 200 | 50.492µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:09 | 200 | 42.225µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:13 | 200 | 38.745µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:18 | 200 | 44.582µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:19 | 200 | 46.946µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:23 | 200 | 41.68µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:28 | 200 | 55.894µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:29 | 200 | 83.096µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:33 | 200 | 40.365µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:38 | 200 | 42.726µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:39 | 200 | 41.508µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:43 | 200 | 48.539µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:48 | 200 | 41.792µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:49 | 200 | 47.389µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:53 | 200 | 42.438µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:58 | 200 | 59.525µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:42:59 | 200 | 39.413µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:03 | 200 | 40.367µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:08 | 200 | 39.613µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:09 | 200 | 58.021µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:13 | 200 | 39.567µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:18 | 200 | 36.972µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:19 | 200 | 32.439µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:23 | 200 | 36.49µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:28 | 200 | 31.923µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:29 | 200 | 35.733µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:33 | 200 | 33.624µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:38 | 200 | 32.824µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:39 | 200 | 40.418µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:43 | 200 | 33.944µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:48 | 200 | 32.747µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:49 | 200 | 34.193µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:53 | 200 | 33.926µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:58 | 200 | 33.002µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:43:59 | 200 | 34.542µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:03 | 200 | 35.63µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:08 | 200 | 42.139µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:09 | 200 | 37.661µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:13 | 200 | 32.317µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:18 | 200 | 33.623µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:19 | 200 | 32.027µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:23 | 200 | 34.35µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:28 | 200 | 36.713µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:29 | 200 | 39.473µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:33 | 200 | 34.937µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:38 | 200 | 35.309µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:39 | 200 | 33.382µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:43 | 200 | 35.833µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:48 | 200 | 32.318µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:49 | 200 | 33.916µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:53 | 200 | 33.574µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:58 | 200 | 36.172µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:44:59 | 200 | 37.074µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:03 | 200 | 33.002µs | 10.134.0.2 | GET "/health" {"level":"info","timestamp":"2026-06-02T15:45:03.745Z","caller":"api_keys/service.go:305","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/06/02 - 15:45:03 | 200 | 11.246678ms | 10.133.0.39 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/06/02 - 15:45:08 | 200 | 31.463µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:09 | 200 | 33.083µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:13 | 200 | 41.635µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:18 | 200 | 38.152µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:19 | 200 | 43.32µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:23 | 200 | 43.311µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:28 | 200 | 52.214µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:29 | 200 | 33.662µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:33 | 200 | 33.248µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:38 | 200 | 42.654µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:39 | 200 | 34.937µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:43 | 200 | 38.74µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:48 | 200 | 38.575µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:49 | 200 | 50.96µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:53 | 200 | 38.557µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:58 | 200 | 38.375µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:45:59 | 200 | 39.897µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:03 | 200 | 40.127µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:08 | 200 | 39.313µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:09 | 200 | 47.032µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:13 | 200 | 52.445µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:18 | 200 | 45.409µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:19 | 200 | 48.211µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:23 | 200 | 47.26µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:28 | 200 | 41.108µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:29 | 200 | 42.252µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 15:46:33 | 200 | 38.048µs | 10.134.0.2 | GET "/health"