{"level":"info","timestamp":"2026-05-20T21:49:05.366Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-sa-multi-sub-valid","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"6074c79d-ecdb-4ab1-b262-a92dd0cfd84c","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:49:05.366Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"6074c79d-ecdb-4ab1-b262-a92dd0cfd84c","keyPrefix":"sk-oai-x38688l87fVq...","username":"system:serviceaccount:models-as-a-service:e2e-sa-multi-sub-valid","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:49:05 | 201 | 2.403309ms | 100.64.0.4 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T21:49:05.404Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-sa-multi-sub-valid","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"1d4c1370-659f-4a6c-9d4b-d8e47e7db51d","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:49:05.404Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"1d4c1370-659f-4a6c-9d4b-d8e47e7db51d","keyPrefix":"sk-oai-1S9WSt1doEnl...","username":"system:serviceaccount:models-as-a-service:e2e-sa-multi-sub-valid","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:49:05 | 201 | 2.123318ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:49:05 | 200 | 613.748µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:49:05 | 200 | 173.22µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:49:05 | 200 | 640.538µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:49:05 | 200 | 186.461µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:49:07 | 200 | 42.27µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:12 | 200 | 41.129µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:14 | 200 | 38.329µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:17 | 200 | 39.55µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:22 | 200 | 44.901µs | 10.133.0.2 | GET "/health" {"level":"warn","timestamp":"2026-05-20T21:49:23.020Z","caller":"api_keys/service.go:130","message":"Subscription selection failed when creating API key","user":"system:serviceaccount:models-as-a-service:e2e-sa-user","requestedSubscription":"e2e-test-other-subscription","error":"access denied to requested subscription"} {"level":"error","timestamp":"2026-05-20T21:49:23.020Z","caller":"api_keys/handler.go:192","message":"Failed to create API key","error":"access denied to requested subscription","stacktrace":"github.com/opendatahub-io/models-as-a-service/maas-api/internal/api_keys.(*Handler).CreateAPIKey\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/api_keys/handler.go:192\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\nmain.registerHandlers.(*Handler).ExtractUserInfo.func4\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/token/handler.go:121\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\nmain.serve.NewMiddleware.func8\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/metrics/middleware.go:20\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\ngithub.com/gin-gonic/gin.CustomRecoveryWithWriter.func1\n\tgithub.com/gin-gonic/gin@v1.10.1/recovery.go:102\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\ngithub.com/gin-gonic/gin.LoggerWithConfig.func1\n\tgithub.com/gin-gonic/gin@v1.10.1/logger.go:249\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\nmain.serve.RequestID.func7\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/middleware/request_id.go:57\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\ngithub.com/gin-gonic/gin.(*Engine).handleHTTPRequest\n\tgithub.com/gin-gonic/gin@v1.10.1/gin.go:644\ngithub.com/gin-gonic/gin.(*Engine).ServeHTTP\n\tgithub.com/gin-gonic/gin@v1.10.1/gin.go:600\nnet/http.serverHandler.ServeHTTP\n\tnet/http/server.go:3340\nnet/http.(*conn).serve\n\tnet/http/server.go:2109"} [GIN] 2026/05/20 - 21:49:23 | 400 | 285.581µs | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:49:24 | 200 | 40.347µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:27 | 200 | 48.597µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:32 | 200 | 49.062µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:34 | 200 | 69.93µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:37 | 200 | 38.35µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:49:40.392Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-sa-group","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"274bafb2-420c-497e-b22a-67c738317a34","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:49:40.392Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"274bafb2-420c-497e-b22a-67c738317a34","keyPrefix":"sk-oai-pOGTs8IP4JAT...","username":"system:serviceaccount:models-as-a-service:e2e-sa-group","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:49:40 | 201 | 11.390792ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:49:40 | 200 | 1.614562ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:49:40 | 200 | 150.351µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:49:42 | 200 | 42.774µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:44 | 200 | 42.044µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:47 | 200 | 40.503µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:49:49.440Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-sa-group-auth-only","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"091428f8-9686-42c3-97e5-7e13d028b349","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:49:49.440Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"091428f8-9686-42c3-97e5-7e13d028b349","keyPrefix":"sk-oai-1DmDipWORFn9...","username":"system:serviceaccount:models-as-a-service:e2e-sa-group-auth-only","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:49:49 | 201 | 2.261217ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:49:52 | 200 | 40.56µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:54 | 200 | 42.125µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:57 | 200 | 38.715µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:49:57 | 200 | 1.052241ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:49:57 | 200 | 123.59µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:50:02 | 200 | 39.373µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:04 | 200 | 43.965µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:07 | 200 | 49.188µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:12 | 200 | 40.743µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:14 | 200 | 53.467µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:50:14.939Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-sa-group-sub-only","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"249d87ba-da58-4270-9037-1b4b3c1fc4ea","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:50:14.939Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"249d87ba-da58-4270-9037-1b4b3c1fc4ea","keyPrefix":"sk-oai-PeTBwnkZgDKB...","username":"system:serviceaccount:models-as-a-service:e2e-sa-group-sub-only","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:50:14 | 201 | 2.764571ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:50:14 | 200 | 785.541µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:50:14 | 200 | 157.284µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:50:17 | 200 | 40.196µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:22 | 200 | 40.141µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:24 | 200 | 37.652µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:27 | 200 | 41.712µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:32 | 200 | 38.665µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:34 | 200 | 38.862µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:37 | 200 | 39.842µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:42 | 200 | 42.375µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:44 | 200 | 49.489µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:47 | 200 | 38.731µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:52 | 200 | 41.941µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:54 | 200 | 39.825µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:50:57 | 200 | 39.068µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:02 | 200 | 40.887µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:04 | 200 | 40.077µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:07 | 200 | 39.633µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:12 | 200 | 38.912µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:14 | 200 | 38.882µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:17 | 200 | 40.211µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:22 | 200 | 41.069µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:24 | 200 | 40.697µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:27 | 200 | 40.942µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:32 | 200 | 40.064µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:34 | 200 | 66.583µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:37 | 200 | 40.996µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:42 | 200 | 40.471µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:44 | 200 | 37.29µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:47 | 200 | 44.241µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:52 | 200 | 38.457µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:54 | 200 | 38.067µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:51:57 | 200 | 39.254µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:02 | 200 | 40.711µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:04 | 200 | 43.254µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:07 | 200 | 50.256µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:12 | 200 | 39.806µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:14 | 200 | 33.468µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:52:14.279Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:llm:e2e-trlp-degraded-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"id":"5e78d428-caf4-46cc-9671-e34aa281fb7f","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:52:14.279Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"5e78d428-caf4-46cc-9671-e34aa281fb7f","keyPrefix":"sk-oai-iWbrdlPOUtfF...","username":"system:serviceaccount:llm:e2e-trlp-degraded-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:52:14 | 201 | 3.748518ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:52:17 | 200 | 33.65µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:22 | 200 | 34.728µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:24 | 200 | 33.728µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:27 | 200 | 33.899µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:32 | 200 | 33.667µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:34 | 200 | 34.075µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:37 | 200 | 35.869µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:37 | 200 | 1.046927ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:52:37 | 200 | 151.123µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:52:38 | 404 | 1.18628ms | 100.64.0.2 | DELETE "/v1/api-keys/e2e-trlp-test-key" [GIN] 2026/05/20 - 21:52:42 | 200 | 33.262µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:44 | 200 | 33.298µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:47 | 200 | 37.034µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:52 | 200 | 34.044µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:54 | 200 | 40.427µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:52:57 | 200 | 32.541µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:02 | 200 | 42.733µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:04 | 200 | 39.353µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:07 | 200 | 32.699µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:12 | 200 | 34.428µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:14 | 200 | 32.857µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:17 | 200 | 34.83µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:22 | 200 | 35.679µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:24 | 200 | 33.544µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:27 | 200 | 37.09µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:53:30.247Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:llm:e2e-degraded-healthy-inf-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"id":"d406e22c-565e-42ce-a42a-e8d856c145c3","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:53:30.247Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"d406e22c-565e-42ce-a42a-e8d856c145c3","keyPrefix":"sk-oai-17WwK9mfdZ9N...","username":"system:serviceaccount:llm:e2e-degraded-healthy-inf-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:53:30 | 201 | 1.908492ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:53:30 | 200 | 728.632µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:53:30 | 200 | 155.224µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:53:32 | 200 | 32.449µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:34 | 200 | 36.898µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:37 | 200 | 42.033µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:42 | 200 | 35.058µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:44 | 200 | 47.09µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:47 | 200 | 41.765µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:53:49.438Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:llm:e2e-failed-sub-inf-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"id":"4d8e3d48-6901-4089-b3fc-64efa68c12ca","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:53:49.438Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"4d8e3d48-6901-4089-b3fc-64efa68c12ca","keyPrefix":"sk-oai-B1IEkASRPn5K...","username":"system:serviceaccount:llm:e2e-failed-sub-inf-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:53:49 | 201 | 2.233552ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:53:49 | 200 | 745.545µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:53:49 | 200 | 150.277µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:53:49 | 200 | 700.525µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:53:49 | 200 | 141.894µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:53:52 | 200 | 37.552µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:54 | 200 | 38.129µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:53:57 | 200 | 34.394µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:02 | 200 | 35.095µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:04 | 200 | 34.117µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:07 | 200 | 34.317µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:54:08.873Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:llm:e2e-degraded-models-apikey-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"id":"18743f1f-7044-4733-8d80-cbd62160d338","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:54:08.873Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"18743f1f-7044-4733-8d80-cbd62160d338","keyPrefix":"sk-oai-1JQIwI8vs4ph...","username":"system:serviceaccount:llm:e2e-degraded-models-apikey-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:llm","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:54:08 | 201 | 2.491962ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:54:08 | 200 | 736.771µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:54:08 | 200 | 675.236µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:54:08 | 200 | 160.255µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:54:08 | 200 | 18.259059ms | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 21:54:12 | 200 | 40.088µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:14 | 200 | 45.251µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:17 | 200 | 38.281µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:22 | 200 | 42.628µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:24 | 200 | 39.366µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:27 | 200 | 42.395µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:28 | 200 | 177.046µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:54:28 | 200 | 179.981µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:54:28 | 200 | 22.166306ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:54:32 | 200 | 39.753µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:34 | 200 | 39.522µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:37 | 200 | 54.268µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:54:40.038Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-single-sub-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"f20526e8-0be2-44a7-a840-8ba0594c527f","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:54:40.038Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"f20526e8-0be2-44a7-a840-8ba0594c527f","keyPrefix":"sk-oai-2OqJ2zr9YcLy...","username":"system:serviceaccount:default:e2e-models-single-sub-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:54:40 | 201 | 5.576589ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:54:42 | 200 | 38.339µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:44 | 200 | 42.863µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:47 | 200 | 41.568µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:52 | 200 | 42.344µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:54 | 200 | 46.139µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:54:57 | 200 | 43.812µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:02 | 200 | 39.652µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:04 | 200 | 50.044µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:07 | 200 | 40.931µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:10 | 200 | 10.423487ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:10 | 200 | 153.261µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:55:10 | 200 | 633.729µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:10 | 200 | 511.572µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:10 | 200 | 127.028µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:55:10 | 200 | 10.649466ms | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 21:55:12 | 200 | 41.183µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:14 | 200 | 49.46µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:17 | 200 | 44.121µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:22 | 200 | 40.949µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:24 | 200 | 40.114µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:27 | 200 | 41.506µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:27 | 200 | 144.327µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:55:27 | 200 | 15.152532ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:55:32 | 200 | 43.278µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:34 | 200 | 45.185µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:55:35.908Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-empty-header-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"40f22898-d9ca-4a29-ac7b-6c6ba326edc4","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:55:35.908Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"40f22898-d9ca-4a29-ac7b-6c6ba326edc4","keyPrefix":"sk-oai-1caaxlvG7Obf...","username":"system:serviceaccount:default:e2e-models-empty-header-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:55:35 | 201 | 4.420779ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:55:37 | 200 | 36.517µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:42 | 200 | 39.518µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:43 | 200 | 1.132622ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:43 | 200 | 534.238µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:43 | 200 | 129.998µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:55:43 | 200 | 9.582014ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:55:44 | 200 | 42.372µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:55:44.414Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-filtered-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"b570e451-e693-4d4b-84db-015978eef991","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:55:44.414Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"b570e451-e693-4d4b-84db-015978eef991","keyPrefix":"sk-oai-1EYcziuAAFA8...","username":"system:serviceaccount:default:e2e-models-filtered-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:55:44 | 201 | 1.870563ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:55:47 | 200 | 37.257µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:52 | 200 | 39.932µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:52 | 200 | 975.651µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:52 | 200 | 519.526µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:52 | 200 | 135.638µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:55:52 | 200 | 8.876387ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:55:52 | 200 | 539.458µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:52 | 200 | 442.414µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:55:52 | 200 | 120.189µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:55:52 | 200 | 7.27421ms | 100.64.0.4 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T21:55:53.399Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-dedup-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"602b4e1a-e2ca-4413-9236-3fbf6c3c2e3e","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:55:53.400Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"602b4e1a-e2ca-4413-9236-3fbf6c3c2e3e","keyPrefix":"sk-oai-6mQkM7NQMqYi...","username":"system:serviceaccount:default:e2e-models-dedup-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:55:53 | 201 | 1.921881ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:55:54 | 200 | 41.653µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:55:57 | 200 | 42.806µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:01 | 200 | 960.846µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:01 | 200 | 498.585µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:01 | 200 | 147.176µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:01 | 200 | 9.74144ms | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 21:56:02 | 200 | 42.297µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:04 | 200 | 40.321µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:07 | 200 | 39.982µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:56:10.596Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-diff-refs-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"867369b2-938e-4ee2-b996-f9c4c31ebd3f","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:56:10.596Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"867369b2-938e-4ee2-b996-f9c4c31ebd3f","keyPrefix":"sk-oai-DrsounwafXdi...","username":"system:serviceaccount:default:e2e-models-diff-refs-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:56:10 | 201 | 2.100073ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:56:12 | 200 | 49.299µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:14 | 200 | 43.816µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:17 | 200 | 41.211µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:18 | 200 | 906.91µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:18 | 200 | 625.973µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:18 | 200 | 154.951µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:18 | 200 | 474.571µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:18 | 200 | 142.774µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:18 | 200 | 22.84188ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:56:22 | 200 | 44.944µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:24 | 200 | 65.039µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:27 | 200 | 40.219µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:56:32.001Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-distinct-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"a1676474-c153-434a-ae2e-103b3b31e49a","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:56:32.001Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"a1676474-c153-434a-ae2e-103b3b31e49a","keyPrefix":"sk-oai-1SYHmhJFYHzy...","username":"system:serviceaccount:default:e2e-models-distinct-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:56:32 | 201 | 2.356158ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:56:32 | 200 | 41.401µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:34 | 200 | 44.125µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:37 | 200 | 38.961µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:40 | 200 | 951.275µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:40 | 200 | 478.756µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:40 | 200 | 472.872µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:56:40 | 200 | 199.071µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:40 | 200 | 135.197µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:40 | 200 | 24.595408ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:56:42 | 200 | 44.136µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:44 | 200 | 44.587µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:47 | 200 | 37.869µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:52 | 200 | 40.164µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:54 | 200 | 41.002µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:56:56 | 200 | 192.674µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:56 | 200 | 182.367µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:56 | 200 | 171.24µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:56:56 | 200 | 36.387851ms | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 21:56:57 | 200 | 51.346µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:02 | 200 | 39.913µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:04 | 200 | 51.758µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:07 | 200 | 38.645µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:12 | 200 | 38.364µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:13 | 200 | 170.034µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:57:13 | 200 | 12.652458ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:57:14 | 200 | 38.91µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:17 | 200 | 39.062µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:22 | 200 | 40.395µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:24 | 200 | 39.985µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:57:24.766Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-empty-models-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"4ab3654d-4625-4179-a63f-32ead78e7840","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:57:24.766Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"4ab3654d-4625-4179-a63f-32ead78e7840","keyPrefix":"sk-oai-tUxCogJuP420...","username":"system:serviceaccount:default:e2e-empty-models-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:57:24 | 201 | 3.944533ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:57:27 | 200 | 37.09µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:32 | 200 | 78.505µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:32 | 200 | 1.609975ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:32 | 200 | 173.24µs | 100.64.0.3 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T21:57:33.396Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-schema-test-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"8410f131-062f-4374-9e44-c403f253ccde","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:57:33.396Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"8410f131-062f-4374-9e44-c403f253ccde","keyPrefix":"sk-oai-So0g2vNxwphw...","username":"system:serviceaccount:default:e2e-models-schema-test-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:57:33 | 201 | 1.921596ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:57:34 | 200 | 37.954µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:37 | 200 | 43.19µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:41 | 200 | 1.197597ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:41 | 200 | 526.318µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:41 | 200 | 120.115µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:57:41 | 200 | 9.415852ms | 100.64.0.4 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T21:57:41.805Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-models-metadata-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"8425bb76-0b28-4609-a19c-d2ac21253b14","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:57:41.805Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"8425bb76-0b28-4609-a19c-d2ac21253b14","keyPrefix":"sk-oai-1dtF9NyOzhH8...","username":"system:serviceaccount:default:e2e-models-metadata-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:57:41 | 201 | 2.103648ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:57:42 | 200 | 39.598µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:44 | 200 | 39.323µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:47 | 200 | 37.486µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:49 | 200 | 1.454067ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:49 | 200 | 563.93µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:49 | 200 | 129.35µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:57:49 | 200 | 9.650188ms | 100.64.0.2 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T21:57:50.542Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-api-key-scoped-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"63f2797a-55cc-46d5-89d3-0de197b9efa8","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:57:50.542Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"63f2797a-55cc-46d5-89d3-0de197b9efa8","keyPrefix":"sk-oai-VVhAFqADOWhd...","username":"system:serviceaccount:models-as-a-service:e2e-api-key-scoped-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:57:50 | 201 | 2.008331ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:57:52 | 200 | 37.532µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:54 | 200 | 40.763µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:57 | 200 | 37.391µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:57:58 | 200 | 1.196514ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:58 | 200 | 500.313µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:57:58 | 200 | 148.066µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:57:58 | 200 | 9.71182ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:58:02 | 200 | 39.769µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:04 | 200 | 51.574µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:07 | 200 | 37.099µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:58:07.726Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:models-as-a-service:e2e-api-key-deleted-sub-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"id":"b516fa2a-d911-473f-bf97-6dd4af8d955b","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:58:07.726Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"b516fa2a-d911-473f-bf97-6dd4af8d955b","keyPrefix":"sk-oai-12tu2pbbed8C...","username":"system:serviceaccount:models-as-a-service:e2e-api-key-deleted-sub-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:models-as-a-service","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:58:07 | 201 | 2.100701ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:58:12 | 200 | 43.698µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:14 | 200 | 40.944µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:17 | 200 | 47.385µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:22 | 200 | 50.474µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:23 | 200 | 1.075871ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:58:23 | 403 | 102.463µs | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 21:58:24 | 200 | 63.591µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:27 | 200 | 44.872µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:32 | 200 | 61.304µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:34 | 200 | 40.743µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:37 | 200 | 39.351µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:41 | 403 | 119.8µs | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:58:42 | 200 | 51.307µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:44 | 200 | 39.324µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:47 | 200 | 39.716µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:52 | 200 | 45.204µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:54 | 200 | 37.372µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:57 | 200 | 39.929µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:58:58 | 403 | 107.881µs | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:59:02 | 200 | 60.671µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:04 | 200 | 45.354µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:07 | 200 | 37.444µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:12 | 200 | 39.643µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:14 | 200 | 42.31µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:15 | 403 | 168.04µs | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:59:17 | 200 | 49.639µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:22 | 200 | 42.473µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:24 | 200 | 45.045µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:27 | 200 | 45.114µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:59:27.452Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-api-key-ignores-header-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"1c5ea50e-c632-4b2b-b051-92a915f0a932","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:59:27.452Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"1c5ea50e-c632-4b2b-b051-92a915f0a932","keyPrefix":"sk-oai-37TxKmkksOh4...","username":"system:serviceaccount:default:e2e-api-key-ignores-header-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:59:27 | 201 | 2.739836ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:59:32 | 200 | 38.807µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:34 | 200 | 49.575µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:35 | 200 | 1.359944ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:59:35 | 200 | 603.888µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:59:35 | 200 | 153.849µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:59:35 | 200 | 17.452318ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:59:37 | 200 | 56.647µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:42 | 200 | 41.577µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:44 | 200 | 38.995µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:47 | 200 | 48.456µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T21:59:47.565Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-multi-keys-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"6cc30296-1716-46c4-b282-21a3be5e44ec","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:59:47.565Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"6cc30296-1716-46c4-b282-21a3be5e44ec","keyPrefix":"sk-oai-i9wVLx2yekiY...","username":"system:serviceaccount:default:e2e-multi-keys-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:59:47 | 201 | 2.543572ms | 100.64.0.4 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T21:59:47.600Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:e2e-multi-keys-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"c93d77b4-0cd6-4c13-9636-38668ab26e07","ephemeral":false} {"level":"info","timestamp":"2026-05-20T21:59:47.601Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"c93d77b4-0cd6-4c13-9636-38668ab26e07","keyPrefix":"sk-oai-1K2vBDKfykaA...","username":"system:serviceaccount:default:e2e-multi-keys-sa","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 21:59:47 | 201 | 1.954112ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 21:59:52 | 200 | 44.033µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:54 | 200 | 51.345µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 21:59:55 | 200 | 983.245µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:59:55 | 200 | 681.755µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:59:55 | 200 | 169.528µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:59:55 | 200 | 10.478037ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 21:59:55 | 200 | 586.929µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:59:55 | 200 | 435.323µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 21:59:55 | 200 | 201.935µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 21:59:55 | 200 | 12.950012ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 21:59:57 | 200 | 40.003µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T22:00:01.396Z","caller":"api_keys/service.go:305","message":"Ephemeral key cleanup completed","deletedCount":0} [GIN] 2026/05/20 - 22:00:01 | 200 | 1.296419ms | 10.132.0.38 | POST "/internal/v1/api-keys/cleanup" [GIN] 2026/05/20 - 22:00:02 | 200 | 40.539µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:04 | 200 | 39.862µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:07 | 200 | 54.318µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:12 | 200 | 191.841µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:12 | 200 | 163.262µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:12 | 200 | 175.596µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:12 | 200 | 39.177395ms | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 22:00:12 | 200 | 73.079µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:14 | 200 | 41.008µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:17 | 200 | 42.996µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:22 | 200 | 39.048µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:24 | 200 | 47.404µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:27 | 200 | 50.635µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:28 | 200 | 178.724µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:28 | 200 | 13.15596ms | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 22:00:28 | 200 | 168.207µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:28 | 200 | 12.121691ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 22:00:32 | 200 | 47.985µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:34 | 200 | 38.908µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:37 | 200 | 42.921µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:42 | 200 | 46.29µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:44 | 200 | 41.722µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:47 | 200 | 40.875µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:52 | 200 | 38.985µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:00:54 | 200 | 46.183µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T22:00:54.288Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:tester-regular-user","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"148ea0df-7c71-4c76-944c-e92cb5c79c6f","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:00:54.288Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"148ea0df-7c71-4c76-944c-e92cb5c79c6f","keyPrefix":"sk-oai-XZm2x2P4WhNN...","username":"system:serviceaccount:default:tester-regular-user","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 22:00:54 | 201 | 2.653025ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:00:54 | 200 | 775.911µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:00:54 | 200 | 149.741µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:54 | 200 | 647.657µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:00:54 | 200 | 160.668µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:54 | 200 | 666.221µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:00:54 | 200 | 163.403µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:54 | 200 | 611.654µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:00:54 | 200 | 177.64µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:54 | 200 | 669.913µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:00:54 | 200 | 510.608µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:00:54 | 200 | 131.578µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:00:54 | 200 | 12.661541ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 22:00:57 | 200 | 50.281µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:02 | 200 | 38.869µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:04 | 200 | 39.455µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:07 | 200 | 39.178µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T22:01:10.044Z","caller":"api_keys/service.go:150","message":"Created API key","user":"system:serviceaccount:default:tester-regular-user","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"id":"c0973043-3706-4292-9b4f-318fb186f073","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:10.044Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"c0973043-3706-4292-9b4f-318fb186f073","keyPrefix":"sk-oai-NEFrJp62cPJw...","username":"system:serviceaccount:default:tester-regular-user","groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:10 | 201 | 2.620325ms | 100.64.0.2 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:01:10 | 200 | 665.35µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:10 | 200 | 147.291µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:01:12 | 200 | 41.48µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:14 | 200 | 41.692µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:17 | 200 | 41.786µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:22 | 200 | 41.652µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:24 | 200 | 39.609µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:27 | 200 | 42.309µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:32 | 200 | 47.951µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:34 | 200 | 40.189µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:37 | 200 | 43.026µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:42 | 200 | 46.695µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:44 | 200 | 38.707µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:47 | 200 | 42.211µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T22:01:48.144Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"714bbbe4-a2bb-40ca-b34a-5c77b4cc4a72","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:48.144Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"714bbbe4-a2bb-40ca-b34a-5c77b4cc4a72","keyPrefix":"sk-oai-eFR0wgo9tM1N...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:48 | 201 | 12.377298ms | 100.64.0.2 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T22:01:48.680Z","caller":"api_keys/service.go:150","message":"Created API key","user":"bob_sre","groups":["system:authenticated","Site-Reliability"],"id":"bfff1934-f078-481f-8525-81be7bdb51e4","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:48.680Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"bfff1934-f078-481f-8525-81be7bdb51e4","keyPrefix":"sk-oai-14SAXkdqBIFt...","username":"bob_sre","groups":["system:authenticated","Site-Reliability"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:48 | 201 | 2.343119ms | 100.64.0.2 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T22:01:48.894Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"79dd6fae-92ec-487b-a47b-c92c85ecd580","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:48.894Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"79dd6fae-92ec-487b-a47b-c92c85ecd580","keyPrefix":"sk-oai-j717kucQiafV...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:48 | 201 | 1.920811ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:01:48 | 200 | 1.489784ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:48 | 200 | 556.952µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:48 | 200 | 119.125µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:01:48 | 200 | 9.071132ms | 100.64.0.4 | GET "/v1/models" [GIN] 2026/05/20 - 22:01:48 | 200 | 718.411µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:48 | 200 | 130.781µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" {"level":"info","timestamp":"2026-05-20T22:01:49.048Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"c1784d3a-f55a-4bda-a255-9077532d9992","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:49.048Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"c1784d3a-f55a-4bda-a255-9077532d9992","keyPrefix":"sk-oai-1MdaIx0z675R...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:49 | 201 | 1.932528ms | 100.64.0.4 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T22:01:49.074Z","caller":"api_keys/store_postgres.go:467","message":"Revoked API key","id":"c1784d3a-f55a-4bda-a255-9077532d9992"} {"level":"info","timestamp":"2026-05-20T22:01:49.074Z","caller":"api_keys/handler.go:326","message":"Revoked API key","keyId":"c1784d3a-f55a-4bda-a255-9077532d9992","revokedBy":"alice_lead"} [GIN] 2026/05/20 - 22:01:49 | 200 | 3.313413ms | 100.64.0.2 | DELETE "/v1/api-keys/c1784d3a-f55a-4bda-a255-9077532d9992" [GIN] 2026/05/20 - 22:01:52 | 200 | 1.106637ms | 10.133.0.58 | POST "/internal/v1/api-keys/validate" {"level":"error","timestamp":"2026-05-20T22:01:52.103Z","caller":"token/handler.go:65","message":"Missing or empty username header","header":"X-MaaS-Username","stacktrace":"main.registerHandlers.(*Handler).ExtractUserInfo.func1\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/token/handler.go:65\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\nmain.serve.NewMiddleware.func8\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/metrics/middleware.go:20\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\ngithub.com/gin-gonic/gin.CustomRecoveryWithWriter.func1\n\tgithub.com/gin-gonic/gin@v1.10.1/recovery.go:102\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\ngithub.com/gin-gonic/gin.LoggerWithConfig.func1\n\tgithub.com/gin-gonic/gin@v1.10.1/logger.go:249\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\nmain.serve.RequestID.func7\n\tgithub.com/opendatahub-io/models-as-a-service/maas-api/internal/middleware/request_id.go:57\ngithub.com/gin-gonic/gin.(*Context).Next\n\tgithub.com/gin-gonic/gin@v1.10.1/context.go:185\ngithub.com/gin-gonic/gin.(*Engine).handleHTTPRequest\n\tgithub.com/gin-gonic/gin@v1.10.1/gin.go:644\ngithub.com/gin-gonic/gin.(*Engine).ServeHTTP\n\tgithub.com/gin-gonic/gin@v1.10.1/gin.go:600\nnet/http.serverHandler.ServeHTTP\n\tnet/http/server.go:3340\nnet/http.(*conn).serve\n\tnet/http/server.go:2109"} [GIN] 2026/05/20 - 22:01:52 | 500 | 102.385µs | 100.64.0.3 | GET "/v1/models" [GIN] 2026/05/20 - 22:01:52 | 200 | 54.098µs | 10.133.0.2 | GET "/health" {"level":"info","timestamp":"2026-05-20T22:01:52.398Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"569072df-0390-44c8-a719-2f1b6ebdf2d9","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:52.398Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"569072df-0390-44c8-a719-2f1b6ebdf2d9","keyPrefix":"sk-oai-1PDDGki8qB4T...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:52 | 201 | 1.947279ms | 100.64.0.4 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T22:01:52.420Z","caller":"api_keys/service.go:150","message":"Created API key","user":"bob_sre","groups":["system:authenticated","Site-Reliability"],"id":"3c5b7898-0320-4142-9b44-dbe65607b3f9","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:52.420Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"3c5b7898-0320-4142-9b44-dbe65607b3f9","keyPrefix":"sk-oai-1Dra3IFLGPVh...","username":"bob_sre","groups":["system:authenticated","Site-Reliability"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:52 | 201 | 1.840391ms | 100.64.0.3 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T22:01:52.531Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"696d10de-7044-4c28-89e7-2f952783d425","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:52.531Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"696d10de-7044-4c28-89e7-2f952783d425","keyPrefix":"sk-oai-1pebEaXtmAid...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:52 | 201 | 2.009638ms | 100.64.0.4 | POST "/v1/api-keys" {"level":"info","timestamp":"2026-05-20T22:01:52.554Z","caller":"api_keys/store_postgres.go:467","message":"Revoked API key","id":"696d10de-7044-4c28-89e7-2f952783d425"} {"level":"info","timestamp":"2026-05-20T22:01:52.554Z","caller":"api_keys/handler.go:326","message":"Revoked API key","keyId":"696d10de-7044-4c28-89e7-2f952783d425","revokedBy":"alice_lead"} [GIN] 2026/05/20 - 22:01:52 | 200 | 2.845161ms | 100.64.0.2 | DELETE "/v1/api-keys/696d10de-7044-4c28-89e7-2f952783d425" [GIN] 2026/05/20 - 22:01:52 | 404 | 1.048119ms | 100.64.0.2 | DELETE "/v1/api-keys/696d10de-7044-4c28-89e7-2f952783d425" {"level":"info","timestamp":"2026-05-20T22:01:52.657Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"bb7bb5cd-d1b6-4965-af6b-e855a7aa2fc2","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:52.657Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"bb7bb5cd-d1b6-4965-af6b-e855a7aa2fc2","keyPrefix":"sk-oai-AfGmMUwC9zQ8...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:52 | 201 | 1.916648ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:01:52 | 200 | 704.694µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 560.202µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 408.578µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:01:52 | 200 | 10.482223ms | 100.64.0.4 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T22:01:52.772Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"a5bd811f-5a58-4f01-a4da-af153156b00b","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:52.773Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"a5bd811f-5a58-4f01-a4da-af153156b00b","keyPrefix":"sk-oai-1IeSemiR3JTe...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:52 | 201 | 1.953074ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:01:52 | 200 | 601.624µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 403 | 130.838µs | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 22:01:52 | 200 | 605.915µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 505.034µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 156.88µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:01:52 | 200 | 10.817494ms | 100.64.0.3 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T22:01:52.909Z","caller":"api_keys/service.go:150","message":"Created API key","user":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"562c9c3e-53f0-43d1-86b5-1d9aa6d1ceb0","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:52.909Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"562c9c3e-53f0-43d1-86b5-1d9aa6d1ceb0","keyPrefix":"sk-oai-BL7iqpV9RAtT...","username":"alice_lead","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:52 | 201 | 1.835435ms | 100.64.0.3 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:01:52 | 200 | 696.883µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 497.013µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 105.511µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:01:52 | 200 | 9.1114ms | 100.64.0.2 | GET "/v1/models" [GIN] 2026/05/20 - 22:01:52 | 200 | 610.608µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 494.681µs | 10.133.0.58 | POST "/internal/v1/api-keys/validate" [GIN] 2026/05/20 - 22:01:52 | 200 | 118.137µs | 10.133.0.58 | POST "/internal/v1/subscriptions/select" [GIN] 2026/05/20 - 22:01:52 | 200 | 9.27083ms | 100.64.0.4 | GET "/v1/models" {"level":"info","timestamp":"2026-05-20T22:01:53.056Z","caller":"api_keys/service.go:150","message":"Created API key","user":"bob_sre","groups":["system:authenticated","Engineering","Project-Alpha"],"id":"2fc73470-2878-40de-b45f-534458afd292","ephemeral":false} {"level":"info","timestamp":"2026-05-20T22:01:53.056Z","caller":"api_keys/handler.go:225","message":"Created API key","keyId":"2fc73470-2878-40de-b45f-534458afd292","keyPrefix":"sk-oai-UnAu43ZSI2yV...","username":"bob_sre","groups":["system:authenticated","Engineering","Project-Alpha"],"ephemeral":false} [GIN] 2026/05/20 - 22:01:53 | 201 | 1.87998ms | 100.64.0.4 | POST "/v1/api-keys" [GIN] 2026/05/20 - 22:01:54 | 200 | 41.885µs | 10.133.0.2 | GET "/health" [GIN] 2026/05/20 - 22:01:57 | 200 | 39.817µs | 10.133.0.2 | GET "/health"