{"level":"info","timestamp":"2026-06-15T01:57:43.168Z","caller":"config/cluster_config.go:119","message":"Created MaaSModelRef informer","watchNamespace":"ALL","gvr":"maas.opendatahub.io/v1alpha1, Resource=maasmodelrefs"} {"level":"info","timestamp":"2026-06-15T01:57:43.168Z","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-15T01:57:43.168Z","caller":"cmd/main.go:65","message":"Loading database connection URL from secret..."} {"level":"info","timestamp":"2026-06-15T01:57:43.180Z","caller":"cmd/main.go:172","message":"Connecting to PostgreSQL database...","tenant":"models-as-a-service"} {"level":"info","timestamp":"2026-06-15T01:57:43.180Z","caller":"cmd/main.go:101","message":"Metrics server starting","address":":9090"} {"level":"info","timestamp":"2026-06-15T01:57:43.276Z","caller":"api_keys/db_driver.go:91","message":"Database schema applied","version":5} {"level":"info","timestamp":"2026-06-15T01:57:43.276Z","caller":"api_keys/db_driver.go:58","message":"Connected to PostgreSQL database (schema applied)","tenant":"models-as-a-service"} {"level":"info","timestamp":"2026-06-15T01:57:43.276Z","caller":"cmd/main.go:179","message":"Starting informers and waiting for cache sync..."} {"level":"info","timestamp":"2026-06-15T01:57:43.376Z","caller":"cmd/main.go:183","message":"Informer caches synced successfully"} {"level":"info","timestamp":"2026-06-15T01:57:43.380Z","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-15T01:57:43.392Z","caller":"cmd/main.go:134","message":"Server starting","address":":8443","secure":true} [GIN] 2026/06/15 - 01:57:49 | 200 | 63.772µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:57:54 | 200 | 53.632µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:57:59 | 200 | 41.699µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:04 | 200 | 50.903µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:09 | 200 | 41.469µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:14 | 200 | 40.771µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:19 | 200 | 32.931µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:19 | 200 | 30.486µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:24 | 200 | 33.09µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:29 | 200 | 39.876µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:29 | 200 | 40.077µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:34 | 200 | 46.722µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:39 | 200 | 42.029µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:39 | 200 | 40.21µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:44 | 200 | 38.601µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:49 | 200 | 40.309µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:49 | 200 | 50.23µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:54 | 200 | 42.031µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:59 | 200 | 43.806µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:58:59 | 200 | 39.699µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:04 | 200 | 40.683µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:09 | 200 | 39.094µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:09 | 200 | 41.043µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:14 | 200 | 39.37µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:19 | 200 | 43.441µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:19 | 200 | 46.246µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:24 | 200 | 52.423µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:29 | 200 | 35.038µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:29 | 200 | 37.833µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:34 | 200 | 41.811µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:39 | 200 | 40.116µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:39 | 200 | 52.794µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:44 | 200 | 62.266µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:49 | 200 | 35.013µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:49 | 200 | 35.168µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:54 | 200 | 45.473µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:59 | 200 | 39.196µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 01:59:59 | 200 | 38.088µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:04 | 200 | 32.925µs | 10.132.0.2 | GET "/health" {"level":"info","timestamp":"2026-06-15T02:00:06.044Z","caller":"api_keys/service.go:316","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/06/15 - 02:00:06 | 200 | 9.361413ms | 10.134.0.38 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/06/15 - 02:00:09 | 200 | 38.032µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:09 | 200 | 43.028µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:14 | 200 | 36.091µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:19 | 200 | 32.862µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:19 | 200 | 35.784µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:24 | 200 | 38.785µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:29 | 200 | 32.045µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:29 | 200 | 34.886µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:34 | 200 | 35.814µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:39 | 200 | 31.758µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:39 | 200 | 34.519µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:44 | 200 | 41.081µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:49 | 200 | 35.262µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:49 | 200 | 36.289µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:54 | 200 | 37.893µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:59 | 200 | 34.609µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:00:59 | 200 | 31.473µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:04 | 200 | 48.305µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:09 | 200 | 34.041µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:09 | 200 | 42.796µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:14 | 200 | 38.972µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:19 | 200 | 34.446µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:19 | 200 | 32.207µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:24 | 200 | 31.494µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:29 | 200 | 33.235µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:29 | 200 | 32.613µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:34 | 200 | 32.688µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:39 | 200 | 32.518µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:39 | 200 | 38.121µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:44 | 200 | 34.636µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:49 | 200 | 38.461µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:49 | 200 | 40.757µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:54 | 200 | 43.946µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:59 | 200 | 42.914µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:01:59 | 200 | 44.61µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:04 | 200 | 54.628µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:09 | 200 | 33.313µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:09 | 200 | 38.753µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:14 | 200 | 38.384µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:19 | 200 | 39.671µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:19 | 200 | 38.414µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:24 | 200 | 39.707µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:29 | 200 | 40.416µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:29 | 200 | 37.482µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:34 | 200 | 38.531µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:39 | 200 | 62.497µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:39 | 200 | 42.004µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:44 | 200 | 39.252µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:49 | 200 | 51.588µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:49 | 200 | 36.735µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:54 | 200 | 40.281µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:59 | 200 | 40.994µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:02:59 | 200 | 48.254µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:04 | 200 | 41.066µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:09 | 200 | 37.589µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:09 | 200 | 38.959µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:14 | 200 | 38.782µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:19 | 200 | 49.93µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:19 | 200 | 42.792µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:24 | 200 | 39.371µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:29 | 200 | 37.554µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:29 | 200 | 42.223µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:34 | 200 | 49.11µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:39 | 200 | 40.838µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:39 | 200 | 39.901µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:44 | 200 | 43.466µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:49 | 200 | 41.094µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:49 | 200 | 38.054µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:54 | 200 | 37.825µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:59 | 200 | 56.17µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:03:59 | 200 | 42.534µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:04 | 200 | 41.091µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:09 | 200 | 39.017µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:09 | 200 | 41.752µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:14 | 200 | 40.659µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:19 | 200 | 48.668µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:19 | 200 | 40.006µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:24 | 200 | 43.276µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:29 | 200 | 40.532µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:29 | 200 | 41.224µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:34 | 200 | 38.517µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:39 | 200 | 39.592µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:39 | 200 | 45.241µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:44 | 200 | 41.531µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:49 | 200 | 44.097µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:49 | 200 | 46.094µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:54 | 200 | 41.416µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:59 | 200 | 38.75µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:04:59 | 200 | 40.81µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:04 | 200 | 40.904µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:09 | 200 | 42.805µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:09 | 200 | 39.107µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:14 | 200 | 40.213µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:19 | 200 | 39.426µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:19 | 200 | 37.91µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:24 | 200 | 40.341µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:29 | 200 | 38.818µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:29 | 200 | 36.76µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:34 | 200 | 39.512µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:39 | 200 | 38.939µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:39 | 200 | 46.975µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:44 | 200 | 65.583µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:49 | 200 | 42.548µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:49 | 200 | 38.124µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:54 | 200 | 32.605µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:59 | 200 | 35.764µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:05:59 | 200 | 31.738µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:04 | 200 | 40.535µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:09 | 200 | 58.501µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:09 | 200 | 35.985µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:14 | 200 | 42.003µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:19 | 200 | 35.221µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:19 | 200 | 33.428µs | 10.132.0.2 | GET "/health" [GIN] 2026/06/15 - 02:06:24 | 200 | 47.391µs | 10.132.0.2 | GET "/health"