{"level":"info","timestamp":"2026-06-15T02:08:06.508Z","caller":"config/cluster_config.go:119","message":"Created MaaSModelRef informer","watchNamespace":"ALL","gvr":"maas.opendatahub.io/v1alpha1, Resource=maasmodelrefs"} {"level":"info","timestamp":"2026-06-15T02:08:06.508Z","caller":"config/cluster_config.go:126","message":"Created MaaSSubscription informer","watchNamespace":"models-as-a-service","gvr":"maas.opendatahub.io/v1alpha1, Resource=maassubscriptions"} {"level":"info","timestamp":"2026-06-15T02:08:06.509Z","caller":"cmd/main.go:65","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-15T02:08:06.523Z","caller":"cmd/main.go:172","message":"Connecting to PostgreSQL database...","tenant":"models-as-a-service"} {"level":"info","timestamp":"2026-06-15T02:08:06.523Z","caller":"cmd/main.go:101","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-06-15T02:08:06.753Z","caller":"api_keys/db_driver.go:91","message":"Database schema applied","version":5} {"level":"info","timestamp":"2026-06-15T02:08:06.753Z","caller":"api_keys/db_driver.go:58","message":"Connected to PostgreSQL database (schema applied)","tenant":"models-as-a-service"} {"level":"info","timestamp":"2026-06-15T02:08:06.753Z","caller":"cmd/main.go:179","message":"Starting informers and waiting for cache sync..."} {"level":"info","timestamp":"2026-06-15T02:08:06.854Z","caller":"cmd/main.go:183","message":"Informer caches synced successfully"} {"level":"info","timestamp":"2026-06-15T02:08:06.857Z","caller":"cmd/main.go:200","message":"Resolved gateway internal host for access probes","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local"} {"level":"info","timestamp":"2026-06-15T02:08:06.868Z","caller":"cmd/main.go:134","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/15 - 02:08:13 | 200 | 52.166µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:18 | 200 | 41.169µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:23 | 200 | 33.276µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:28 | 200 | 37.801µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:33 | 200 | 35.07µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:38 | 200 | 33.74µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:43 | 200 | 34.595µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:44 | 200 | 38.867µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:48 | 200 | 35.671µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:53 | 200 | 31.732µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:54 | 200 | 40.581µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:08:58 | 200 | 45.176µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:03 | 200 | 36.454µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:04 | 200 | 36.2µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:08 | 200 | 40.306µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:13 | 200 | 34.203µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:14 | 200 | 57.537µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:18 | 200 | 33.712µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:23 | 200 | 33.569µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:24 | 200 | 31.12µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:28 | 200 | 41.488µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:33 | 200 | 32.855µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:34 | 200 | 33.534µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:38 | 200 | 33.22µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:43 | 200 | 33.74µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:44 | 200 | 33.787µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:48 | 200 | 33.386µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:53 | 200 | 39.352µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:54 | 200 | 33.284µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:09:58 | 200 | 34.108µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:03 | 200 | 32.739µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:04 | 200 | 31.254µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:08 | 200 | 41.94µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:13 | 200 | 37.295µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:14 | 200 | 36.295µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:18 | 200 | 46.727µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:23 | 200 | 35.713µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:24 | 200 | 33.386µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:28 | 200 | 32.829µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:33 | 200 | 31.486µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:34 | 200 | 44.714µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:38 | 200 | 33.206µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:43 | 200 | 32.93µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:44 | 200 | 31.757µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:48 | 200 | 34.952µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:53 | 200 | 33.409µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:54 | 200 | 32.316µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:10:58 | 200 | 34.61µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:03 | 200 | 37.985µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:04 | 200 | 33.344µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:08 | 200 | 34.522µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:13 | 200 | 34.592µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:14 | 200 | 32.076µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:18 | 200 | 33.741µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:23 | 200 | 38.596µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:24 | 200 | 32.747µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:28 | 200 | 36.448µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:33 | 200 | 33.667µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:34 | 200 | 40.274µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:38 | 200 | 39.907µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:43 | 200 | 40.401µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:44 | 200 | 44.857µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:48 | 200 | 36.701µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:53 | 200 | 40.61µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:54 | 200 | 38.478µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:11:58 | 200 | 39.064µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:03 | 200 | 40.587µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:04 | 200 | 39.836µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:08 | 200 | 39.158µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:13 | 200 | 39.726µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:14 | 200 | 38.369µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:18 | 200 | 42.544µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:23 | 200 | 37.184µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:24 | 200 | 40.825µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:28 | 200 | 53.432µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:33 | 200 | 51.897µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:34 | 200 | 37.502µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:38 | 200 | 37.317µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:43 | 200 | 57.04µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:44 | 200 | 42.457µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:48 | 200 | 56.37µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:53 | 200 | 39.836µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:54 | 200 | 40.119µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:12:58 | 200 | 37.861µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:03 | 200 | 38.957µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:04 | 200 | 38.327µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:08 | 200 | 44.909µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:13 | 200 | 38.931µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:14 | 200 | 38.966µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:18 | 200 | 41.907µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:23 | 200 | 40.78µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:24 | 200 | 37.908µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:28 | 200 | 37.542µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:33 | 200 | 40.77µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:34 | 200 | 56.021µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:38 | 200 | 32.335µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:43 | 200 | 30.721µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:44 | 200 | 30.768µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:48 | 200 | 41.692µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:53 | 200 | 36.716µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:54 | 200 | 31.67µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:13:58 | 200 | 30.949µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:03 | 200 | 30.577µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:04 | 200 | 33.847µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:08 | 200 | 32.118µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:13 | 200 | 46.839µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:14 | 200 | 33.957µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:18 | 200 | 35.749µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:23 | 200 | 35.418µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:24 | 200 | 32.1µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:28 | 200 | 30.887µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:33 | 200 | 31.793µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:34 | 200 | 32.929µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:38 | 200 | 30.041µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:43 | 200 | 33.348µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:44 | 200 | 32.582µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:48 | 200 | 32.687µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:53 | 200 | 34.044µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:54 | 200 | 34.067µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:14:58 | 200 | 31.307µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:03 | 200 | 43.713µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:04 | 200 | 31.536µs | 10.132.0.2 | GET "/health" {"level":"info","timestamp":"2026-06-15T02:15:04.365Z","caller":"api_keys/service.go:323","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/06/15 - 02:15:04 | 200 | 11.132149ms | 10.134.0.37 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/06/15 - 02:15:08 | 200 | 33.919µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:13 | 200 | 43.778µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:14 | 200 | 34.648µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:18 | 200 | 33.721µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:23 | 200 | 35.143µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:24 | 200 | 31.651µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:28 | 200 | 39.969µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:33 | 200 | 46.864µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:34 | 200 | 39.241µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:38 | 200 | 40.603µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:43 | 200 | 38.28µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:44 | 200 | 37.808µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:48 | 200 | 41.821µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:53 | 200 | 40.925µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:54 | 200 | 40.78µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:15:58 | 200 | 35.96µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:03 | 200 | 39.66µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:04 | 200 | 42.711µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:08 | 200 | 39.165µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:13 | 200 | 44.059µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:14 | 200 | 42.262µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:18 | 200 | 42.61µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:23 | 200 | 40.677µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:24 | 200 | 39.617µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:28 | 200 | 38.412µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:33 | 200 | 41.861µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:16:34 | 200 | 39.415µs | 10.132.0.2 | GET "/health"