{"level":"info","timestamp":"2026-06-02T01:53:03.745Z","caller":"cmd/main.go:65","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-02T01:53:03.759Z","caller":"cmd/main.go:172","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-06-02T01:53:03.759Z","caller":"cmd/main.go:101","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-06-02T01:53:03.906Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":3} {"level":"info","timestamp":"2026-06-02T01:53:03.906Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-06-02T01:53:04.010Z","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-02T01:53:04.029Z","caller":"cmd/main.go:134","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/02 - 01:53:10 | 200 | 62.72µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:15 | 200 | 43.662µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:20 | 200 | 42.952µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:25 | 200 | 42.807µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:30 | 200 | 65.476µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:35 | 200 | 43.296µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:40 | 200 | 39.487µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:41 | 200 | 35.338µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:45 | 200 | 34.355µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:50 | 200 | 42.933µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:51 | 200 | 31.947µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:53:55 | 200 | 33.185µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:00 | 200 | 41.058µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:01 | 200 | 34.798µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:05 | 200 | 59.332µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:10 | 200 | 36.738µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:11 | 200 | 32.891µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:15 | 200 | 36.35µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:20 | 200 | 34.836µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:21 | 200 | 32.855µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:25 | 200 | 32.269µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:30 | 200 | 39.015µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:31 | 200 | 35.27µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:35 | 200 | 34.654µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:40 | 200 | 56.772µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:41 | 200 | 52.416µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:45 | 200 | 37.807µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:50 | 200 | 35.205µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:51 | 200 | 37.733µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:54:55 | 200 | 34.028µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:00 | 200 | 38.784µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:01 | 200 | 44.417µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:05 | 200 | 33.613µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:10 | 200 | 33.824µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:11 | 200 | 31.915µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:15 | 200 | 34.534µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:20 | 200 | 32.707µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:21 | 200 | 35.824µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:25 | 200 | 32.782µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:30 | 200 | 43.166µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:31 | 200 | 57.202µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:35 | 200 | 31.654µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:40 | 200 | 42.32µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:41 | 200 | 35.67µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:45 | 200 | 34.227µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:50 | 200 | 32.17µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:51 | 200 | 32.619µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:55:55 | 200 | 34.076µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:00 | 200 | 32.285µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:01 | 200 | 32.308µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:05 | 200 | 36.919µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:10 | 200 | 42.833µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:11 | 200 | 33.049µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:15 | 200 | 32.162µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:20 | 200 | 33.621µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:21 | 200 | 36.439µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:25 | 200 | 33.573µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:30 | 200 | 38.457µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:31 | 200 | 51.463µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:35 | 200 | 31.641µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:40 | 200 | 36.072µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:41 | 200 | 54.99µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:45 | 200 | 52.86µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:50 | 200 | 33.494µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:51 | 200 | 36.062µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:56:55 | 200 | 36.87µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:00 | 200 | 32.549µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:01 | 200 | 37.997µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:05 | 200 | 37.243µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:10 | 200 | 52.66µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:11 | 200 | 39.801µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:15 | 200 | 42.631µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:20 | 200 | 42.662µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:21 | 200 | 38.41µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:25 | 200 | 40.114µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:30 | 200 | 49.468µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:31 | 200 | 47.572µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:35 | 200 | 38.317µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:40 | 200 | 50.13µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:41 | 200 | 44.169µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:45 | 200 | 41.394µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:50 | 200 | 42.317µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:51 | 200 | 37.931µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:57:55 | 200 | 59.997µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:00 | 200 | 38.371µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:01 | 200 | 38.465µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:05 | 200 | 38.765µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:10 | 200 | 41.431µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:11 | 200 | 38.91µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:15 | 200 | 38.76µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:20 | 200 | 38.422µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:21 | 200 | 40.554µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:25 | 200 | 44.229µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:30 | 200 | 40.07µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:31 | 200 | 40.285µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:35 | 200 | 39.493µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:40 | 200 | 38.893µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:41 | 200 | 38.336µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:45 | 200 | 41.372µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:50 | 200 | 46.798µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:51 | 200 | 42.88µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:58:55 | 200 | 40.827µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:00 | 200 | 49.983µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:01 | 200 | 43.95µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:05 | 200 | 38.075µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:10 | 200 | 36.139µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:11 | 200 | 36.869µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:15 | 200 | 32.54µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:20 | 200 | 56.48µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:21 | 200 | 36.351µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:25 | 200 | 34.21µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:30 | 200 | 33.816µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:31 | 200 | 34.591µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:35 | 200 | 36.857µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:40 | 200 | 33.472µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:41 | 200 | 31.659µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:45 | 200 | 34.063µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:50 | 200 | 44.639µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:51 | 200 | 37.05µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 01:59:55 | 200 | 35.414µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:00 | 200 | 31.427µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:01 | 200 | 36.628µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:05 | 200 | 35.06µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:10 | 200 | 38.296µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:11 | 200 | 35.097µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:15 | 200 | 35.007µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:20 | 200 | 33.713µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:21 | 200 | 37.676µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:25 | 200 | 55.333µs | 10.134.0.2 | GET "/health" {"level":"info","timestamp":"2026-06-02T02:00:29.238Z","caller":"api_keys/service.go:305","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/06/02 - 02:00:29 | 200 | 10.757314ms | 10.133.0.51 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/06/02 - 02:00:30 | 200 | 40.147µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:31 | 200 | 33.692µs | 10.134.0.2 | GET "/health" [GIN] 2026/06/02 - 02:00:35 | 200 | 36.78µs | 10.134.0.2 | GET "/health"