{"level":"info","timestamp":"2026-05-29T20:59:40.011Z","caller":"cmd/main.go:65","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-05-29T20:59:40.026Z","caller":"cmd/main.go:172","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-05-29T20:59:40.026Z","caller":"cmd/main.go:101","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-05-29T20:59:40.096Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":3} {"level":"info","timestamp":"2026-05-29T20:59:40.096Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-05-29T20:59:40.201Z","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-05-29T20:59:40.220Z","caller":"cmd/main.go:134","message":"Server starting","address":":8443","secure":true} [GIN] 2026/05/29 - 20:59:46 | 200 | 81.55µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 20:59:51 | 200 | 41.501µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 20:59:56 | 200 | 42.021µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:01 | 200 | 43.749µs | 10.134.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-29T21:00:04.908Z","caller":"api_keys/service.go:305","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/05/29 - 21:00:04 | 200 | 13.017111ms | 10.133.0.31 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/05/29 - 21:00:06 | 200 | 59.834µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:11 | 200 | 55.253µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:16 | 200 | 41.518µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:16 | 200 | 33.317µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:21 | 200 | 39.335µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:26 | 200 | 34.482µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:26 | 200 | 35.761µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:31 | 200 | 42.942µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:36 | 200 | 32.77µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:36 | 200 | 34.305µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:41 | 200 | 36.362µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:46 | 200 | 44.22µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:46 | 200 | 41.045µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:51 | 200 | 52.551µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:56 | 200 | 39.647µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:00:56 | 200 | 35.97µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:01 | 200 | 42.297µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:06 | 200 | 33.257µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:06 | 200 | 38.848µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:11 | 200 | 36.262µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:16 | 200 | 36.197µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:16 | 200 | 39.472µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:21 | 200 | 42.878µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:26 | 200 | 41.735µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:26 | 200 | 34.932µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:31 | 200 | 34.318µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:36 | 200 | 34.684µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:36 | 200 | 35.382µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:41 | 200 | 37.853µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:46 | 200 | 34.135µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:46 | 200 | 35.89µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:51 | 200 | 42.829µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:56 | 200 | 39.218µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:01:56 | 200 | 34.766µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:01 | 200 | 44.196µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:06 | 200 | 42.208µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:06 | 200 | 33.749µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:11 | 200 | 36.147µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:16 | 200 | 61.556µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:16 | 200 | 34.24µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:21 | 200 | 38.152µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:26 | 200 | 37.193µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:26 | 200 | 34.477µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:31 | 200 | 41.954µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:36 | 200 | 44.342µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:36 | 200 | 32.73µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:41 | 200 | 32.552µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:46 | 200 | 43.969µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:46 | 200 | 36.041µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:51 | 200 | 38.207µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:56 | 200 | 34.765µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:02:56 | 200 | 38.549µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:01 | 200 | 56.678µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:06 | 200 | 48.837µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:06 | 200 | 43.642µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:11 | 200 | 38.064µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:16 | 200 | 38.404µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:16 | 200 | 35.942µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:21 | 200 | 38.737µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:26 | 200 | 40.917µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:26 | 200 | 39.166µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:31 | 200 | 47.933µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:36 | 200 | 42.531µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:36 | 200 | 51.092µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:41 | 200 | 41.841µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:46 | 200 | 39.542µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:46 | 200 | 38.216µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:51 | 200 | 49.308µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:56 | 200 | 49.908µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:03:56 | 200 | 42.142µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:01 | 200 | 85.435µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:06 | 200 | 45.038µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:06 | 200 | 41.817µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:11 | 200 | 65.132µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:16 | 200 | 52.859µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:16 | 200 | 44.928µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:21 | 200 | 66.919µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:26 | 200 | 44.351µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:26 | 200 | 43.956µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:31 | 200 | 47.279µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:36 | 200 | 45.744µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:36 | 200 | 41.98µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:41 | 200 | 39.795µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:46 | 200 | 37.373µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:46 | 200 | 40.708µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:51 | 200 | 37.02µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:56 | 200 | 40.237µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:04:56 | 200 | 38.325µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:01 | 200 | 63.997µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:06 | 200 | 42.23µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:06 | 200 | 47.251µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:11 | 200 | 38.421µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:16 | 200 | 38.055µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:16 | 200 | 40.75µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:21 | 200 | 40.635µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:26 | 200 | 51.34µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:26 | 200 | 39.201µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:31 | 200 | 49.945µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:36 | 200 | 35.353µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:36 | 200 | 33.009µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:41 | 200 | 43.252µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:46 | 200 | 33.141µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:46 | 200 | 34.879µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:51 | 200 | 40.228µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:56 | 200 | 35.814µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:05:56 | 200 | 32.288µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:01 | 200 | 32.422µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:06 | 200 | 43.663µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:06 | 200 | 32.673µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:11 | 200 | 35.116µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:16 | 200 | 38.302µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:16 | 200 | 33.399µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:21 | 200 | 42.419µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:26 | 200 | 44.27µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:26 | 200 | 33.44µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:31 | 200 | 31.597µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:36 | 200 | 42.549µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:36 | 200 | 41.968µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:41 | 200 | 55.473µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:46 | 200 | 34.826µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:46 | 200 | 32.162µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:51 | 200 | 34.256µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:56 | 200 | 37.562µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:06:56 | 200 | 55.171µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:01 | 200 | 37.263µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:06 | 200 | 39.695µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:06 | 200 | 34.14µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:11 | 200 | 33.048µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:16 | 200 | 34.923µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:16 | 200 | 32.55µs | 10.134.0.2 | GET "/health" [GIN] 2026/05/29 - 21:07:21 | 200 | 35.759µs | 10.134.0.2 | GET "/health"