{"level":"info","timestamp":"2026-06-12T18:48:57.879Z","caller":"cmd/main.go:66","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-12T18:48:57.891Z","caller":"cmd/main.go:173","message":"Connecting to PostgreSQL database..."} {"level":"info","timestamp":"2026-06-12T18:48:57.965Z","caller":"cmd/main.go:102","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-06-12T18:48:58.060Z","caller":"api_keys/db_driver.go:90","message":"Database schema applied","version":4} {"level":"info","timestamp":"2026-06-12T18:48:58.060Z","caller":"api_keys/db_driver.go:57","message":"Connected to PostgreSQL database (schema applied)"} {"level":"info","timestamp":"2026-06-12T18:48:58.164Z","caller":"cmd/main.go:195","message":"Resolved gateway internal host for access probes","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local"} {"level":"info","timestamp":"2026-06-12T18:48:58.175Z","caller":"cmd/main.go:135","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/12 - 18:49:03 | 200 | 58.742µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:08 | 200 | 51.038µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:13 | 200 | 31.147µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:18 | 200 | 40.901µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:23 | 200 | 46.846µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:28 | 200 | 40.84µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:33 | 200 | 32.769µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:35 | 200 | 31.631µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:38 | 200 | 66.501µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:43 | 200 | 32.215µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:45 | 200 | 33.098µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:48 | 200 | 32.281µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:53 | 200 | 32.85µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:55 | 200 | 31.97µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:49:58 | 200 | 38.422µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:03 | 200 | 32.116µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:05 | 200 | 35.527µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:08 | 200 | 32.736µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:13 | 200 | 35.463µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:15 | 200 | 34.41µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:18 | 200 | 30.898µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:23 | 200 | 31.279µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:25 | 200 | 41.966µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:28 | 200 | 33.39µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:33 | 200 | 37.016µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:35 | 200 | 31.586µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:38 | 200 | 32.646µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:43 | 200 | 32.494µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:45 | 200 | 36.333µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:48 | 200 | 31.295µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:53 | 200 | 33.664µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:55 | 200 | 44.19µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:50:58 | 200 | 36.363µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:03 | 200 | 54.343µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:05 | 200 | 30.889µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:08 | 200 | 34.022µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:13 | 200 | 33.481µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:15 | 200 | 35.283µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:18 | 200 | 41.371µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:23 | 200 | 35.794µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:25 | 200 | 34.983µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:28 | 200 | 31.907µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:33 | 200 | 33.192µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:35 | 200 | 31.732µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:38 | 200 | 41.237µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:43 | 200 | 36.348µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:45 | 200 | 30.464µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:48 | 200 | 30.961µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:53 | 200 | 36.271µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:55 | 200 | 43.703µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:51:58 | 200 | 39.438µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:03 | 200 | 36.119µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:05 | 200 | 34.448µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:08 | 200 | 31.263µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:13 | 200 | 32.573µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:15 | 200 | 41.221µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:18 | 200 | 33.559µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:23 | 200 | 38.163µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:25 | 200 | 44.124µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:28 | 200 | 33.757µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:33 | 200 | 55.671µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:35 | 200 | 61.579µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:38 | 200 | 34.79µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:43 | 200 | 33.557µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:45 | 200 | 33.92µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:48 | 200 | 41.328µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:53 | 200 | 50.645µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:55 | 200 | 47.191µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:52:58 | 200 | 40.839µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:03 | 200 | 40.653µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:05 | 200 | 41.161µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:08 | 200 | 38.536µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:13 | 200 | 40.381µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:15 | 200 | 36.699µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:18 | 200 | 41.85µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:23 | 200 | 44.324µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:25 | 200 | 39.115µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:28 | 200 | 38.676µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:33 | 200 | 38.634µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:35 | 200 | 34.737µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:38 | 200 | 40.522µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:43 | 200 | 38.714µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:45 | 200 | 37.603µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:48 | 200 | 39.94µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:53 | 200 | 40.931µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:55 | 200 | 50.676µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:53:58 | 200 | 41.356µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:03 | 200 | 32.621µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:05 | 200 | 37.415µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:08 | 200 | 41.137µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:13 | 200 | 38.967µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:15 | 200 | 40.371µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:18 | 200 | 33.144µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:23 | 200 | 43.609µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:25 | 200 | 39.186µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:28 | 200 | 37.198µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:33 | 200 | 37.502µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:35 | 200 | 39.502µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:38 | 200 | 48.804µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:43 | 200 | 37.854µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:45 | 200 | 40.751µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:48 | 200 | 39.256µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:53 | 200 | 39.079µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:55 | 200 | 42.189µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:54:58 | 200 | 41.743µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:03 | 200 | 32.949µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:05 | 200 | 59.123µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:08 | 200 | 32.233µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:13 | 200 | 33.772µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:15 | 200 | 71.097µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:18 | 200 | 34.172µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:23 | 200 | 46.262µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:25 | 200 | 32.536µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:28 | 200 | 32.06µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:33 | 200 | 32.087µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:35 | 200 | 42.149µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:38 | 200 | 31.472µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:43 | 200 | 42.155µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:45 | 200 | 34.247µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:48 | 200 | 30.498µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:53 | 200 | 32.326µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:55 | 200 | 32.322µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:55:58 | 200 | 31.327µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:03 | 200 | 34.342µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:05 | 200 | 43.786µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:08 | 200 | 38.246µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:13 | 200 | 31.384µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:15 | 200 | 33.529µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:18 | 200 | 55.909µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:23 | 200 | 33.447µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:25 | 200 | 33.527µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:28 | 200 | 32.991µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:33 | 200 | 31.124µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:35 | 200 | 41.048µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:38 | 200 | 32.095µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:43 | 200 | 32.69µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:45 | 200 | 33.595µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:48 | 200 | 34.631µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:53 | 200 | 35.868µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:55 | 200 | 31.475µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:56:58 | 200 | 32.921µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:03 | 200 | 34.507µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:05 | 200 | 31.352µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:08 | 200 | 32.432µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:13 | 200 | 31.292µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:15 | 200 | 32.113µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:18 | 200 | 32.473µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:23 | 200 | 40.556µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:25 | 200 | 32.841µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:28 | 200 | 31.723µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:33 | 200 | 34.042µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:35 | 200 | 35.817µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:38 | 200 | 32.68µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:43 | 200 | 31.213µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:45 | 200 | 35.184µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:48 | 200 | 32.421µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:53 | 200 | 31.874µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:55 | 200 | 30.949µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:57:58 | 200 | 32.675µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:03 | 200 | 31.545µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:05 | 200 | 32.279µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:08 | 200 | 32.934µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:13 | 200 | 31.357µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:15 | 200 | 32.192µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:18 | 200 | 35.176µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:23 | 200 | 33.306µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:25 | 200 | 32.579µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:28 | 200 | 32.664µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:33 | 200 | 33.973µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:35 | 200 | 32.481µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:38 | 200 | 53.544µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:43 | 200 | 41.91µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:45 | 200 | 37.134µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:48 | 200 | 31.228µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:53 | 200 | 35.608µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/12 - 18:58:55 | 200 | 55.575µs | 10.132.0.2 | GET "/health"