Open ivanbishop opened 3 weeks ago
Hi ivanbishop! 👋
Welcome, and thank you for opening your first issue in the repo!
Please wait for triaging by our maintainers.
As development is carried out in our spare time, you can support us by sponsoring our activities or even funding the development of specific issues. Sponsorship link
If you plan to raise a PR for this issue, please take a look at our contributing guide.
@ivanbishop,
OKTA sso with MSK IAM works fine. I have this running.
Looks like you have an extra semicolon ; at the end of client.callback.handler.class line. Remove it. Only jass.config needs semicolon ; at the end.
You have
KAFKA_CLUSTERS_0_PROPERTIES_SASL_CLIENT_CALLBACK_HANDLER_CLASS: software.amazon.msk.auth.iam.IAMClientCallbackHandler;
Make it
KAFKA_CLUSTERS_0_PROPERTIES_SASL_CLIENT_CALLBACK_HANDLER_CLASS: software.amazon.msk.auth.iam.IAMClientCallbackHandler
And that should work.
Hi Anand, I am talking with Roman as now the misleading callback errors have gone but I still see the 500 error on validate new cluster.
Would you be willing to share your docker-compose and config for Okta RBAC with me (obfuscated of course), it'd be a time saver?
Thanks Ivan
From: "Anand K" @.> To: "kafbat/kafka-ui" @.> Cc: "ivanbishop" @.>, "Author" @.> Sent: Friday, November 15, 2024 1:28:27 PM Subject: Re: [kafbat/kafka-ui] OIDC (Okta) issue with using callback handler for AWS_IAM_MSK (Issue #642)
OKTA sso with MSK IAM works fine. I have this running.
Looks like you have an extra ";" at the end of client.callback.handler.class line. Remove it. Only jass.config needs ";" at the end.
You have KAFKA_CLUSTERS_0_PROPERTIES_SASL_CLIENT_CALLBACK_HANDLER_CLASS: software.amazon.msk.auth.iam.IAMClientCallbackHandler;
Make it KAFKA_CLUSTERS_0_PROPERTIES_SASL_CLIENT_CALLBACK_HANDLER_CLASS: software.amazon.msk.auth.iam.IAMClientCallbackHandler
And that should work.
— Reply to this email directly, [ https://github.com/kafbat/kafka-ui/issues/642#issuecomment-2479957096 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ABPMBW7TZ6FIW6RXV6VG74D2AZRPXAVCNFSM6AAAAABQ4KVCPOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZZHE2TOMBZGY | unsubscribe ] . You are receiving this because you authored the thread. Message ID: @.***>
Script started on 2024-11-18 18:02:25+00:00 [TERM="xterm-256color" TTY="/dev/pts/1" COLUMNS="219" LINES="65"]
@.* kui]# docker-compose -f ~/kui/docker-compose.yml up
[?2004lWARN[0000] /root/kui/docker-compose.yml: the attribute version
is obsolete, it will be ignored, please remove it to avoid potential confusion
[1A[1B[0G[?25l[+] Running 1/0
✔ Container kafbat-ui Created 0.0s
[?25hAttaching to kafbat-ui
kafbat-ui | Standard Commons Logging discovery in action with spring-jcl: please remove commons-logging.jar from classpath in order to avoid potential conflicts
kafbat-ui | _ _
kafbat-ui | | | | | | / |_ /\ _ | |_ _ | |/ /_ / _| |___
kafbat-ui | | || || | | / | '| / | ' / ` / | ' \/ -) | ' </ | _| / / _
|
kafbat-ui | _/|__| || _|| // _| ._,_|||\| ||__,|| |__,|
kafbat-ui | |_|
kafbat-ui |
kafbat-ui | 2024-11-18 18:02:37,148 WARN [main] i.k.u.u.DynamicConfigOperations: Dynamic config file /etc/kafkaui/dynamic_config.yaml doesnt exist or not readable
kafbat-ui | 2024-11-18 18:02:37,158 INFO [main] i.k.u.KafkaUiApplication: Starting KafkaUiApplication using Java 17.0.13 with PID 1 (/api.jar started by kafkaui in /)
kafbat-ui | 2024-11-18 18:02:37,158 DEBUG [main] i.k.u.KafkaUiApplication: Running with Spring Boot v3.3.4, Spring v6.1.13
kafbat-ui | 2024-11-18 18:02:37,159 INFO [main] i.k.u.KafkaUiApplication: No active profile set, falling back to 1 default profile: "default"
kafbat-ui | 2024-11-18 18:02:42,306 DEBUG [main] i.k.u.s.SerdesInitializer: Configuring serdes for cluster wiztest
kafbat-ui | 2024-11-18 18:02:43,517 INFO [main] i.k.u.c.a.OAuthSecurityConfig: Configuring OAUTH2 authentication.
kafbat-ui | 2024-11-18 18:02:43,972 INFO [main] o.s.b.a.e.w.EndpointLinksResolver: Exposing 3 endpoints beneath base path '/actuator'
kafbat-ui | 2024-11-18 18:02:44,888 INFO [main] o.s.b.w.e.n.NettyWebServer: Netty started on port 8080 (http)
kafbat-ui | 2024-11-18 18:02:44,924 INFO [main] i.k.u.KafkaUiApplication: Started KafkaUiApplication in 9.037 seconds (process running for 10.259)
kafbat-ui | 2024-11-18 18:02:44,996 DEBUG [parallel-1] i.k.u.s.ClustersStatisticsScheduler: Start getting metrics for kafkaCluster: wiztest
kafbat-ui | 2024-11-18 18:02:45,045 INFO [parallel-1] o.a.k.c.a.AdminClientConfig: AdminClientConfig values:
kafbat-ui | auto.include.jmx.reporter = true
kafbat-ui | bootstrap.servers = [b-3.demomskcluster.i9XXXX.c14.kafka.us-west-2.amazonaws.com:9098, b-2.demomskcluster.i9XXXX.c14.kafka.us-west-2.amazonaws.com:9098, b-1.demomskcluster.i9XXXX.c14.kafka.us-west-2.amazonaws.com:9098]
kafbat-ui | client.dns.lookup = use_all_dns_ips
kafbat-ui | client.id = kafbat-ui-admin-1731952965-1
kafbat-ui | connections.max.idle.ms = 300000
kafbat-ui | default.api.timeout.ms = 60000
kafbat-ui | metadata.max.age.ms = 300000
kafbat-ui | metric.reporters = []
kafbat-ui | metrics.num.samples = 2
kafbat-ui | metrics.recording.level = INFO
kafbat-ui | metrics.sample.window.ms = 30000
kafbat-ui | receive.buffer.bytes = 65536
kafbat-ui | reconnect.backoff.max.ms = 1000
kafbat-ui | reconnect.backoff.ms = 50
kafbat-ui | request.timeout.ms = 30000
kafbat-ui | retries = 2147483647
kafbat-ui | retry.backoff.ms = 100
kafbat-ui | sasl.client.callback.handler.class = class software.amazon.msk.auth.iam.IAMClientCallbackHandler
kafbat-ui | sasl.jaas.config = [hidden]
kafbat-ui | sasl.kerberos.kinit.cmd = /usr/bin/kinit
kafbat-ui | sasl.kerberos.min.time.before.relogin = 60000
kafbat-ui | sasl.kerberos.service.name = null
kafbat-ui | sasl.kerberos.ticket.renew.jitter = 0.05
kafbat-ui | sasl.kerberos.ticket.renew.window.factor = 0.8
kafbat-ui | sasl.login.callback.handler.class = null
kafbat-ui | sasl.login.class = null
kafbat-ui | sasl.login.connect.timeout.ms = null
kafbat-ui | sasl.login.read.timeout.ms = null
kafbat-ui | sasl.login.refresh.buffer.seconds = 300
kafbat-ui | sasl.login.refresh.min.period.seconds = 60
kafbat-ui | sasl.login.refresh.window.factor = 0.8
kafbat-ui | sasl.login.refresh.window.jitter = 0.05
kafbat-ui | sasl.login.retry.backoff.max.ms = 10000
kafbat-ui | sasl.login.retry.backoff.ms = 100
kafbat-ui | sasl.mechanism = AWS_MSK_IAM
kafbat-ui | sasl.oauthbearer.clock.skew.seconds = 30
kafbat-ui | sasl.oauthbearer.expected.audience = null
kafbat-ui | sasl.oauthbearer.expected.issuer = null
kafbat-ui | sasl.oauthbearer.jwks.endpoint.refresh.ms = 3600000
kafbat-ui | sasl.oauthbearer.jwks.endpoint.retry.backoff.max.ms = 10000
kafbat-ui | sasl.oauthbearer.jwks.endpoint.retry.backoff.ms = 100
kafbat-ui | sasl.oauthbearer.jwks.endpoint.url = null
kafbat-ui | sasl.oauthbearer.scope.claim.name = scope
kafbat-ui | sasl.oauthbearer.sub.claim.name = sub
kafbat-ui | sasl.oauthbearer.token.endpoint.url = null
kafbat-ui | security.protocol = SASL_SSL
kafbat-ui | security.providers = null
kafbat-ui | send.buffer.bytes = 131072
kafbat-ui | socket.connection.setup.timeout.max.ms = 30000
kafbat-ui | socket.connection.setup.timeout.ms = 10000
kafbat-ui | ssl.cipher.suites = null
kafbat-ui | ssl.enabled.protocols = [TLSv1.2, TLSv1.3]
kafbat-ui | ssl.endpoint.identification.algorithm = https
kafbat-ui | ssl.engine.factory.class = null
kafbat-ui | ssl.key.password = null
kafbat-ui | ssl.keymanager.algorithm = SunX509
kafbat-ui | ssl.keystore.certificate.chain = null
kafbat-ui | ssl.keystore.key = null
kafbat-ui | ssl.keystore.location = null
kafbat-ui | ssl.keystore.password = null
kafbat-ui | ssl.keystore.type = JKS
kafbat-ui | ssl.protocol = TLSv1.3
kafbat-ui | ssl.provider = null
kafbat-ui | ssl.secure.random.implementation = null
kafbat-ui | ssl.trustmanager.algorithm = PKIX
kafbat-ui | ssl.truststore.certificates = null
kafbat-ui | ssl.truststore.location = null
kafbat-ui | ssl.truststore.password = null
kafbat-ui | ssl.truststore.type = JKS
kafbat-ui |
kafbat-ui | 2024-11-18 18:02:45,292 INFO [parallel-1] o.a.k.c.s.a.AbstractLogin: Successfully logged in.
kafbat-ui | 2024-11-18 18:02:45,335 INFO [parallel-1] o.a.k.c.u.AppInfoParser: Kafka version: 3.5.2
kafbat-ui | 2024-11-18 18:02:45,335 INFO [parallel-1] o.a.k.c.u.AppInfoParser: Kafka commitId: 8f0b0b0d0466632b
kafbat-ui | 2024-11-18 18:02:45,335 INFO [parallel-1] o.a.k.c.u.AppInfoParser: Kafka startTimeMs: 1731952965333
kafbat-ui | 2024-11-18 18:02:46,720 DEBUG [parallel-8] i.k.u.s.ClustersStatisticsScheduler: Metrics updated for cluster: wiztest
kafbat-ui | 2024-11-18 18:02:52,509 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:52,511 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:52,521 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:52,522 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'GET /login'
kafbat-ui | 2024-11-18 18:02:52,523 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:52,526 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=GET}
kafbat-ui | 2024-11-18 18:02:52,526 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'GET /logout'
kafbat-ui | 2024-11-18 18:02:52,527 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:52,558 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=POST}
kafbat-ui | 2024-11-18 18:02:52,562 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'POST /logout'
kafbat-ui | 2024-11-18 18:02:52,562 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:52,578 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/css/', method=null}
kafbat-ui | 2024-11-18 18:02:52,580 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /css/'
kafbat-ui | 2024-11-18 18:02:52,581 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/js/', method=null}
kafbat-ui | 2024-11-18 18:02:52,582 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /js/'
kafbat-ui | 2024-11-18 18:02:52,582 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/media/', method=null}
kafbat-ui | 2024-11-18 18:02:52,582 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /media/'
kafbat-ui | 2024-11-18 18:02:52,582 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/resources/', method=null}
kafbat-ui | 2024-11-18 18:02:52,583 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /resources/'
kafbat-ui | 2024-11-18 18:02:52,583 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/health/', method=null}
kafbat-ui | 2024-11-18 18:02:52,583 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /actuator/health/'
kafbat-ui | 2024-11-18 18:02:52,583 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/info', method=null}
kafbat-ui | 2024-11-18 18:02:52,584 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /actuator/info'
kafbat-ui | 2024-11-18 18:02:52,584 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/prometheus', method=null}
kafbat-ui | 2024-11-18 18:02:52,585 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /actuator/prometheus'
kafbat-ui | 2024-11-18 18:02:52,585 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/auth', method=null}
kafbat-ui | 2024-11-18 18:02:52,586 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /auth'
kafbat-ui | 2024-11-18 18:02:52,586 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:52,586 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:52,587 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=null}
kafbat-ui | 2024-11-18 18:02:52,587 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /logout'
kafbat-ui | 2024-11-18 18:02:52,587 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/oauth2/', method=null}
kafbat-ui | 2024-11-18 18:02:52,588 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /oauth2/'
kafbat-ui | 2024-11-18 18:02:52,588 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/static/', method=null}
kafbat-ui | 2024-11-18 18:02:52,588 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /static/'
kafbat-ui | 2024-11-18 18:02:52,589 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:52,591 DEBUG [parallel-2] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on '/' using *@.
kafbat-ui | 2024-11-18 18:02:52,594 DEBUG [parallel-2] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: No SecurityContext found in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:52,596 DEBUG [parallel-2] o.s.s.w.s.a.AuthorizationWebFilter: Authorization failed: Access Denied
kafbat-ui | 2024-11-18 18:02:52,617 DEBUG [parallel-2] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: No SecurityContext found in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:52,625 DEBUG [parallel-2] o.s.s.w.s.DelegatingServerAuthenticationEntryPoint: Trying to match using @.}, NegatedServerWebExchangeMatcher{matcher=AndServerWebExchangeMatcher{matchers=[OrServerWebExchangeMatcher{matchers=[PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}, PathMatcherServerWebExchangeMatcher{pattern='/favicon.ico', method=null}]}, @.}, MediaTypeRequestMatcher [matchingMediaTypes=[application/xhtml+xml, image/, text/html, text/plain], useEquals=false, ignoredMediaTypes=[/*]]]}]}}]}
kafbat-ui | 2024-11-18 18:02:52,639 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Trying to match using @.}
kafbat-ui | 2024-11-18 18:02:52,643 DEBUG [parallel-2] o.s.s.w.s.u.m.NegatedServerWebExchangeMatcher: matches = true
kafbat-ui | 2024-11-18 18:02:52,644 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Trying to match using NegatedServerWebExchangeMatcher{matcher=AndServerWebExchangeMatcher{matchers=[OrServerWebExchangeMatcher{matchers=[PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}, PathMatcherServerWebExchangeMatcher{pattern='/favicon.ico', method=null}]}, @.}, MediaTypeRequestMatcher [matchingMediaTypes=[application/xhtml+xml, image/, text/html, text/plain], useEquals=false, ignoredMediaTypes=[/*]]]}]}}
kafbat-ui | 2024-11-18 18:02:52,644 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Trying to match using OrServerWebExchangeMatcher{matchers=[PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}, PathMatcherServerWebExchangeMatcher{pattern='/favicon.ico', method=null}]}
kafbat-ui | 2024-11-18 18:02:52,644 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:52,645 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:52,645 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/favicon.ico', method=null}
kafbat-ui | 2024-11-18 18:02:52,645 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /favicon.ico'
kafbat-ui | 2024-11-18 18:02:52,645 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:52,645 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Did not match
kafbat-ui | 2024-11-18 18:02:52,645 DEBUG [parallel-2] o.s.s.w.s.u.m.NegatedServerWebExchangeMatcher: matches = true
kafbat-ui | 2024-11-18 18:02:52,651 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: All requestMatchers returned true
kafbat-ui | 2024-11-18 18:02:52,651 DEBUG [parallel-2] o.s.s.w.s.DelegatingServerAuthenticationEntryPoint: Match found! Executing @.*
kafbat-ui | 2024-11-18 18:02:52,655 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Trying to match using OrServerWebExchangeMatcher{matchers=[PathMatcherServerWebExchangeMatcher{pattern='/', method=GET}]}
kafbat-ui | 2024-11-18 18:02:52,656 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/', method=GET}
kafbat-ui | 2024-11-18 18:02:52,658 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Checking match of request : '/'; against '/'
kafbat-ui | 2024-11-18 18:02:52,658 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: matched
kafbat-ui | 2024-11-18 18:02:52,659 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Trying to match using NegatedServerWebExchangeMatcher{matcher=OrServerWebExchangeMatcher{matchers=[PathMatcherServerWebExchangeMatcher{pattern='/favicon.', method=null}]}}
kafbat-ui | 2024-11-18 18:02:52,660 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/favicon.', method=null}
kafbat-ui | 2024-11-18 18:02:52,661 DEBUG [parallel-2] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /favicon.'
kafbat-ui | 2024-11-18 18:02:52,661 DEBUG [parallel-2] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:52,661 DEBUG [parallel-2] o.s.s.w.s.u.m.NegatedServerWebExchangeMatcher: matches = true
kafbat-ui | 2024-11-18 18:02:52,662 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: Trying to match using MediaTypeRequestMatcher [matchingMediaTypes=[text/html], useEquals=false, ignoredMediaTypes=[/]]
kafbat-ui | 2024-11-18 18:02:52,666 DEBUG [parallel-2] o.s.s.w.s.u.m.MediaTypeServerWebExchangeMatcher: httpRequestMediaTypes=[text/html, application/xhtml+xml, image/avif, image/webp, image/apng, application/xml;q=0.9, application/signed-exchange;v=b3;q=0.7, /;q=0.8]
kafbat-ui | 2024-11-18 18:02:52,666 DEBUG [parallel-2] o.s.s.w.s.u.m.MediaTypeServerWebExchangeMatcher: Processing text/html
kafbat-ui | 2024-11-18 18:02:52,667 DEBUG [parallel-2] o.s.s.w.s.u.m.MediaTypeServerWebExchangeMatcher: text/html .isCompatibleWith text/html = true
kafbat-ui | 2024-11-18 18:02:52,667 DEBUG [parallel-2] o.s.s.w.s.u.m.AndServerWebExchangeMatcher: All requestMatchers returned true
kafbat-ui | 2024-11-18 18:02:52,667 DEBUG [parallel-2] o.s.s.w.s.s.WebSessionServerRequestCache: Request added to WebSession: '/'
kafbat-ui | 2024-11-18 18:02:52,667 DEBUG [parallel-2] o.s.s.w.s.DefaultServerRedirectStrategy: Redirecting to '/oauth2/authorization/okta'
kafbat-ui | 2024-11-18 18:02:52,780 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Checking match of request : '/oauth2/authorization/okta'; against '/oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:52,795 DEBUG [reactor-http-epoll-4] o.s.s.w.s.DefaultServerRedirectStrategy: Redirecting to 'https://ACME.okta.com/oauth2/v1/authorize?response_type=code&client_id=0oaYYYYye2TDYIGy2p7&scope=openid%20profile%20email%20groups&state=ozb2L_vewTzH1hPAzFRjpzuC6LCacrWeuAteLKlaVbM%3D&redirect_uri=http://10.139.12.27:8080/login/oauth2/code/okta&nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU'
kafbat-ui | 2024-11-18 18:02:53,108 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /login/oauth2/code/okta' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:53,108 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Checking match of request : '/login/oauth2/code/okta'; against '/login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:53,981 TRACE [reactor-http-epoll-4] i.k.u.s.r.e.OauthAuthorityExtractor: Extracting OAuth2 user authorities
kafbat-ui | 2024-11-18 18:02:53,981 DEBUG [reactor-http-epoll-4] i.k.u.s.r.e.OauthAuthorityExtractor: Principal name is: @*.
kafbat-ui | 2024-11-18 18:02:53,982 DEBUG [reactor-http-epoll-4] i.k.u.s.r.e.OauthAuthorityExtractor: Matched roles by username: []
kafbat-ui | 2024-11-18 18:02:53,982 TRACE [reactor-http-epoll-4] i.k.u.s.r.e.OauthAuthorityExtractor: The field is either a set or a list, returning as is
kafbat-ui | 2024-11-18 18:02:53,983 DEBUG [reactor-http-epoll-4] i.k.u.s.r.e.OauthAuthorityExtractor: Token's groups: [kafbat-admins]
kafbat-ui | 2024-11-18 18:02:53,984 DEBUG [reactor-http-epoll-4] i.k.u.s.r.e.OauthAuthorityExtractor: Matched group roles: [kafbat-admins]
kafbat-ui | 2024-11-18 18:02:53,994 DEBUG [reactor-http-epoll-4] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Saved SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:53,997 DEBUG [parallel-3] o.s.s.w.s.DefaultServerRedirectStrategy: Redirecting to '/'
kafbat-ui | 2024-11-18 18:02:54,063 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,064 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,065 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:54,065 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'GET /login'
kafbat-ui | 2024-11-18 18:02:54,065 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,066 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=GET}
kafbat-ui | 2024-11-18 18:02:54,066 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'GET /logout'
kafbat-ui | 2024-11-18 18:02:54,066 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,067 DEBUG [reactor-http-epoll-4] o.s.s.w.s.s.WebSessionServerRequestCache: Request removed from WebSession: '/'
kafbat-ui | 2024-11-18 18:02:54,069 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=POST}
kafbat-ui | 2024-11-18 18:02:54,069 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'POST /logout'
kafbat-ui | 2024-11-18 18:02:54,069 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,070 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/css/', method=null}
kafbat-ui | 2024-11-18 18:02:54,070 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /css/'
kafbat-ui | 2024-11-18 18:02:54,072 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/js/', method=null}
kafbat-ui | 2024-11-18 18:02:54,073 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /js/'
kafbat-ui | 2024-11-18 18:02:54,074 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/media/', method=null}
kafbat-ui | 2024-11-18 18:02:54,074 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /media/'
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/resources/', method=null}
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /resources/'
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/health/', method=null}
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /actuator/health/'
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/info', method=null}
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /actuator/info'
kafbat-ui | 2024-11-18 18:02:54,075 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/prometheus', method=null}
kafbat-ui | 2024-11-18 18:02:54,076 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /actuator/prometheus'
kafbat-ui | 2024-11-18 18:02:54,076 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/auth', method=null}
kafbat-ui | 2024-11-18 18:02:54,076 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /auth'
kafbat-ui | 2024-11-18 18:02:54,076 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:54,076 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:54,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=null}
kafbat-ui | 2024-11-18 18:02:54,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /logout'
kafbat-ui | 2024-11-18 18:02:54,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/oauth2/', method=null}
kafbat-ui | 2024-11-18 18:02:54,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /oauth2/'
kafbat-ui | 2024-11-18 18:02:54,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/static/', method=null}
kafbat-ui | 2024-11-18 18:02:54,078 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /' doesn't match 'null /static/'
kafbat-ui | 2024-11-18 18:02:54,078 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,078 DEBUG [reactor-http-epoll-4] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on '/' using @.
kafbat-ui | 2024-11-18 18:02:54,078 DEBUG [reactor-http-epoll-4] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:54,079 DEBUG [reactor-http-epoll-4] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
kafbat-ui | 2024-11-18 18:02:54,277 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,277 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,278 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:54,278 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'GET /login'
kafbat-ui | 2024-11-18 18:02:54,279 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,279 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=GET}
kafbat-ui | 2024-11-18 18:02:54,280 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'GET /logout'
kafbat-ui | 2024-11-18 18:02:54,280 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,280 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=POST}
kafbat-ui | 2024-11-18 18:02:54,281 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'POST /logout'
kafbat-ui | 2024-11-18 18:02:54,283 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,283 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/css/', method=null}
kafbat-ui | 2024-11-18 18:02:54,283 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /css/'
kafbat-ui | 2024-11-18 18:02:54,284 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/js/', method=null}
kafbat-ui | 2024-11-18 18:02:54,284 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /js/'
kafbat-ui | 2024-11-18 18:02:54,284 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/media/', method=null}
kafbat-ui | 2024-11-18 18:02:54,285 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /media/'
kafbat-ui | 2024-11-18 18:02:54,285 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/resources/', method=null}
kafbat-ui | 2024-11-18 18:02:54,285 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /resources/'
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/health/', method=null}
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /actuator/health/'
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/info', method=null}
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /actuator/info'
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/prometheus', method=null}
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /actuator/prometheus'
kafbat-ui | 2024-11-18 18:02:54,286 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/auth', method=null}
kafbat-ui | 2024-11-18 18:02:54,287 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /auth'
kafbat-ui | 2024-11-18 18:02:54,287 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:54,288 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:54,288 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=null}
kafbat-ui | 2024-11-18 18:02:54,288 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /logout'
kafbat-ui | 2024-11-18 18:02:54,289 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/oauth2/', method=null}
kafbat-ui | 2024-11-18 18:02:54,289 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /oauth2/'
kafbat-ui | 2024-11-18 18:02:54,289 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/static/', method=null}
kafbat-ui | 2024-11-18 18:02:54,290 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-Czorou3v.js' doesn't match 'null /static/'
kafbat-ui | 2024-11-18 18:02:54,290 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,290 DEBUG [reactor-http-epoll-4] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on '/assets/index-Czorou3v.js' using @.
kafbat-ui | 2024-11-18 18:02:54,291 DEBUG [reactor-http-epoll-4] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:54,292 DEBUG [reactor-http-epoll-4] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
kafbat-ui | 2024-11-18 18:02:54,340 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,340 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,340 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:54,340 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'GET /login'
kafbat-ui | 2024-11-18 18:02:54,341 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,341 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=GET}
kafbat-ui | 2024-11-18 18:02:54,341 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'GET /logout'
kafbat-ui | 2024-11-18 18:02:54,341 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,341 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=POST}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'POST /logout'
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/css/', method=null}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET **@.' doesn't match 'null /css/'
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/js/', method=null}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /js/'
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/media/', method=null}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /media/'
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/resources/', method=null}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /resources/'
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/health/', method=null}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.*' doesn't match 'null /actuator/health/*'
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/info', method=null}
kafbat-ui | 2024-11-18 18:02:54,342 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /actuator/info'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/prometheus', method=null}
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /actuator/prometheus'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/auth', method=null}
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /auth'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=null}
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /logout'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/oauth2/', method=null}
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET **@.' doesn't match 'null /oauth2/'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/static/', method=null}
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET @.' doesn't match 'null /static/'
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on **@.' using @.
kafbat-ui | 2024-11-18 18:02:54,343 DEBUG [reactor-http-epoll-6] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:54,344 DEBUG [reactor-http-epoll-6] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
kafbat-ui | 2024-11-18 18:02:54,346 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'GET /login'
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=GET}
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'GET /logout'
kafbat-ui | 2024-11-18 18:02:54,347 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=POST}
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'POST /logout'
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/css/', method=null}
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /css/'
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/js/', method=null}
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /js/'
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/media/', method=null}
kafbat-ui | 2024-11-18 18:02:54,348 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /media/'
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/resources/', method=null}
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /resources/'
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/health/', method=null}
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /actuator/health/'
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/info', method=null}
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /actuator/info'
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/prometheus', method=null}
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /actuator/prometheus'
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/auth', method=null}
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /auth'
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:54,349 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=null}
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /logout'
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/oauth2/', method=null}
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /oauth2/'
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/static/', method=null}
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /assets/index-DLMqazo1.css' doesn't match 'null /static/'
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on '/assets/index-DLMqazo1.css' using @.
kafbat-ui | 2024-11-18 18:02:54,350 DEBUG [reactor-http-epoll-5] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:54,351 DEBUG [reactor-http-epoll-5] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
kafbat-ui | 2024-11-18 18:02:54,885 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'GET /login'
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=GET}
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'GET /logout'
kafbat-ui | 2024-11-18 18:02:54,886 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,887 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=POST}
kafbat-ui | 2024-11-18 18:02:54,887 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'POST /logout'
kafbat-ui | 2024-11-18 18:02:54,887 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,889 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/css/', method=null}
kafbat-ui | 2024-11-18 18:02:54,889 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /css/'
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/js/', method=null}
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /js/'
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/media/', method=null}
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /media/'
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/resources/', method=null}
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /resources/'
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/health/', method=null}
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /actuator/health/'
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/info', method=null}
kafbat-ui | 2024-11-18 18:02:54,890 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /actuator/info'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/actuator/prometheus', method=null}
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /actuator/prometheus'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/auth', method=null}
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /auth'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=null}
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /login'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/logout', method=null}
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /logout'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/oauth2/', method=null}
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /oauth2/'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/static/', method=null}
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/info' doesn't match 'null /static/'
kafbat-ui | 2024-11-18 18:02:54,891 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: No matches found
kafbat-ui | 2024-11-18 18:02:54,892 DEBUG [reactor-http-epoll-4] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on '/api/info' using @.
kafbat-ui | 2024-11-18 18:02:54,892 DEBUG [reactor-http-epoll-4] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:02:54,892 DEBUG [reactor-http-epoll-4] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
kafbat-ui | 2024-11-18 18:02:55,076 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/authorization' doesn't match 'null /oauth2/authorization/{registrationId}'
kafbat-ui | 2024-11-18 18:02:55,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatcher: Request 'GET /api/authorization' doesn't match 'null /login/oauth2/code/{registrationId}'
kafbat-ui | 2024-11-18 18:02:55,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.OrServerWebExchangeMatcher: Trying to match using PathMatcherServerWebExchangeMatcher{pattern='/login', method=GET}
kafbat-ui | 2024-11-18 18:02:55,077 DEBUG [reactor-http-epoll-4] o.s.s.w.s.u.m.PathPatternParserServerWebExchangeMatch
I looked at your config and compared to mine, and pretty much same except I dont have jwk-set-uri in okta config I have given permissions to consumer as you will to browse the topics. I have additional glue serde, and audit settings but those are optional.
Which servers are you getting 500 errors from? from kafkaui or okta? it seems from the logs authentication is working and its sending the group kafbat-admins back.
Hi, thanks for taking time again.
I am pretty confident that okta is working as expected. Why?
If I alter my group from kafbat-ro to kafbat-admins I see AUTH working as [ @.,COM | @. ] AND the kafbat UI is FULLY RO when I'm in that RBAC group and it DOES open to edit when I'm in kafbat-admins RBAC group.
When in Admin I can create/modify topics, message production etc. but "validate" fails on 500.
See time stamp 2024-11-18 18:03:49 in attached log below Thanks Ivan
===================================================================================================================
afbat-ui | 2024-11-18 18:03:49,316 DEBUG [reactor-http-epoll-1] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:03:49,316 DEBUG [reactor-http-epoll-1] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
kafb at-ui | 2024-11-18 18:03:49,501 DEBUG [reactor-http-epoll-1] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=OAuth2AuthenticationToken [Principal=RbacOidcUser[user=Name: @., Granted Authorities: [[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]], User Attributes: [{at_hash=-tj850Q-hKiZRm3znqFllg, sub=00ue1yoqgcraBilFs2p7, zoneinfo=America/Los_Angeles, ver=1, email_verified=true, amr=[swk, mfa, pwd], iss=https://ACME.okta.com, groups=[kafbat-admins], @., locale=US, given_name=Ivan, nonce=peH4pIjVVE2JZjhient_yVOutFOC7b7YZ20zcXpwQWU, aud=[0oaYYYYye2TDYIGy2p7], updated_at=2024-10-17T20:10:20Z, idp=0oa1s5gfqhqJxMeuV2p6, auth_time=2024-11-18T17:37:38Z, name=Ivan Bishop, exp=2024-11-18T19:02:53Z, family_name=Bishop, iat=2024-11-18T18:02:53Z, @., jti=ID.MyeSnjUgTjE1IU82Dq4_QvFWzy_iEeXvK--naJoMZxQ}], groups=[kafbat-admins]], Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[OIDC_USER, SCOPE_email, SCOPE_groups, SCOPE_openid, SCOPE_profile]]]' in WebSession: @.'
kafbat-ui | 2024-11-18 18:03:49,531 ERROR [reactor-http-epoll- 1] o.s.b.a.w.r.e.AbstractErrorWebExceptionHandler: [f1b1da3b-30] 500 Server Error for HTTP PUT "/api/config/validated"
kafbat-ui | java.lang.NullPointerException: null kafbat-ui | at java.base/java.util.Objects.requireNonNull(Objects.java:209) kafbat-ui | Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: kafbat-ui | Error has been observed at the following site(s): kafbat-ui | __checkpoint ⇢ Handler io.kafbat.ui.controller.ApplicationConfigController#validateConfig(Mono, ServerWebExchange) [DispatcherHandler] kafbat-ui | checkpoint ⇢ io.kafbat.ui.config.CorsGlobalConfiguration$$Lambda$1211/0x00007fd46a7193b8 [DefaultWebFilterChain] kafbat-ui | *checkpoint ⇢ io.kafbat.ui.config.ReadOnlyModeFilter [DefaultWebFilterChain] kafbat-ui | __checkpoint ⇢ io.kafbat.ui.config.CustomWebFilter [DefaultWebFilterChain] kafbat-ui | checkpoint ⇢ AuthorizationWebFilter [DefaultWebFilterChain] kafbat-ui | *checkpoint ⇢ ExceptionTranslationWebFilter [DefaultWebFilterChain] kafbat-ui | __checkpoint ⇢ LogoutWebFilter [DefaultWebFilterChain] kafbat-ui | checkpoint ⇢ ServerRequestCacheWebFilter [DefaultWebFilterChain] kafbat-ui | *checkpoint ⇢ SecurityContextServerWebExchangeWebFilter [DefaultWebFilterChain] kafbat-ui | __checkpoint ⇢ LogoutPageGeneratingWebFilter [DefaultWebFilterChain] kafbat-ui | checkpoint ⇢ LoginPageGeneratingWebFilter [DefaultWebFilterChain] kafbat-ui | *checkpoint ⇢ OAuth2LoginAuthenticationWebFilter [DefaultWebFilterChain] kafbat-ui | __checkpoint ⇢ OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain] kafbat-ui | checkpoint ⇢ ReactorContextWebFilter [DefaultWebFilterChain] kafbat-ui | *checkpoint ⇢ HttpHeaderWriterWebFilter [DefaultWebFilterChain] kafbat-ui | __checkpoint ⇢ ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain] kafbat-ui | checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain] kafbat-ui | *checkpoint ⇢ HTTP PUT "/api/config/validated" [ExceptionHandlingWebHandler] kafbat-ui | Original Stack Trace: kafbat-ui | at java.base/java.util.Objects.requireNonNull(Objects.java:209) kafbat-ui | at io.kafbat.ui.service.rbac.AccessControlService.lambda$getUserPermissions$4(AccessControlService.java:120) kafbat-ui | at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:178) kafbat-ui | at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) kafbat-ui | at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) kafbat-ui | at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) kafbat-ui | at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) kafbat-ui | at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:575) kafbat-ui | at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260) kafbat-ui | at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616) kafbat-ui | at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622) kafbat-ui | at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627) kafbat-ui | at io.kafbat.ui.service.rbac.AccessControlService.getUserPermissions(AccessControlService.java:122) kafbat-ui | at io.kafbat.ui.service.rbac.AccessControlService.isAccessible(AccessControlService.java:113) kafbat-ui | at io.kafbat.ui.service.rbac.AccessControlService.lambda$isAccessible$3(AccessControlService.java:106) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:113) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:129) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:129) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onNext(FluxFilterFuseable.java:118) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onNext(FluxMapFuseable.java:299) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondComplete(MonoFlatMap.java:245) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:305) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:158) kafbat-ui | at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1865) kafbat-ui | at reactor.core.publisher.MonoCacheTime.subscribeOrReturn(MonoCacheTime.java:151) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:63) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onNext(FluxMap.java:224) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2571) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.request(FluxMap.java:295) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.request(FluxMapFuseable.java:360) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.request(FluxFilterFuseable.java:191) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.MonoIgnoreElements$IgnoreElementsSubscriber.onSubscribe(MonoIgnoreElements.java:72) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onSubscribe(FluxFilterFuseable.java:87) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onSubscribe(FluxMapFuseable.java:265) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onSubscribe(FluxFilter.java:85) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onSubscribe(FluxMap.java:194) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) kafbat-ui | at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) kafbat-ui | at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:200) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.complete(MonoIgnoreThen.java:294) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onNext(MonoIgnoreThen.java:188) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:158) kafbat-ui | at reactor.core.publisher.MonoZip$ZipCoordinator.signal(MonoZip.java:297) kafbat-ui | at reactor.core.publisher.MonoZip$ZipInner.onNext(MonoZip.java:478) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2571) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) kafbat-ui | at reactor.core.publisher.MonoZip$ZipInner.onSubscribe(MonoZip.java:470) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onSubscribe(MonoPeekTerminal.java:152) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoZip$ZipCoordinator.request(MonoZip.java:220) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onSubscribe(MonoIgnoreThen.java:135) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.MonoZip.subscribe(MonoZip.java:129) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:241) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:204) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:189) kafbat-ui | at reactor.core.publisher.Operators.complete(Operators.java:137) kafbat-ui | at reactor.core.publisher.MonoZip.subscribe(MonoZip.java:121) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerNext(FluxConcatMapNoPrefetch.java:259) kafbat-ui | at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:865) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:129) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2571) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2331) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.request(FluxConcatMapNoPrefetch.java:339) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onSubscribe(MonoNext.java:70) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onSubscribe(FluxConcatMapNoPrefetch.java:164) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onComplete(MonoPeekTerminal.java:299) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onComplete(MonoPeekTerminal.java:299) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:155) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onNext(FluxPeekFuseable.java:503) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onNext(MonoPeekTerminal.java:180) kafbat-ui | at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:122) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerNext(FluxConcatMapNoPrefetch.java:259) kafbat-ui | at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:865) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondComplete(MonoFlatMap.java:245) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:305) kafbat-ui | at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:122) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:129) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onNext(FluxFilterFuseable.java:118) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onNext(FluxMapFuseable.java:299) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onNext(FluxMapFuseable.java:299) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onNext(FluxFilterFuseable.java:337) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondComplete(MonoFlatMap.java:245) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:305) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:158) kafbat-ui | at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1865) kafbat-ui | at reactor.core.publisher.MonoCacheTime.subscribeOrReturn(MonoCacheTime.java:151) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:63) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onNext(FluxFilter.java:113) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onNext(FluxMap.java:224) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2571) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.request(FluxMap.java:295) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.request(FluxFilterFuseable.java:411) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.request(FluxMapFuseable.java:360) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.request(FluxMapFuseable.java:360) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.request(FluxFilterFuseable.java:191) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.request(FluxDefaultIfEmpty.java:98) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapInner.onSubscribe(MonoFlatMap.java:291) kafbat-ui | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.onSubscribe(Operators.java:2051) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onSubscribe(FluxFilterFuseable.java:87) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onSubscribe(FluxMapFuseable.java:265) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onSubscribe(FluxMapFuseable.java:265) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onSubscribe(FluxFilterFuseable.java:305) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onSubscribe(FluxFilter.java:85) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onSubscribe(FluxMap.java:194) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:129) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onNext(FluxFilterFuseable.java:118) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2571) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.request(FluxFilterFuseable.java:191) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onSubscribe(FluxFilterFuseable.java:87) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onNext(FluxConcatMapNoPrefetch.java:207) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:335) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerComplete(FluxConcatMapNoPrefetch.java:275) kafbat-ui | at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onComplete(FluxConcatMap.java:889) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:189) kafbat-ui | at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onComplete(FluxPeekFuseable.java:940) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:85) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2573) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:102) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:850) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:612) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:592) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.request(FluxFlatMap.java:349) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2331) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.request(FluxPeekFuseable.java:783) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) kafbat-ui | at reactor.core.publisher.FluxMap$MapSubscriber.request(FluxMap.java:164) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2331) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.request(FluxConcatMapNoPrefetch.java:339) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) kafbat-ui | at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.request(FluxDefaultIfEmpty.java:98) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.request(FluxPeekFuseable.java:437) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.request(MonoPeekTerminal.java:139) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.request(FluxFilter.java:186) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onSubscribe(FluxFilter.java:85) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onSubscribe(MonoPeekTerminal.java:152) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onSubscribe(FluxPeekFuseable.java:471) kafbat-ui | at reactor.core.publisher.MonoPeekTerminal$MonoTerminalPeekSubscriber.onSubscribe(MonoPeekTerminal.java:152) kafbat-ui | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.onSubscribe(Operators.java:2051) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onSubscribe(MonoNext.java:70) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onSubscribe(FluxConcatMapNoPrefetch.java:164) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onComplete(FluxPeekFuseable.java:940) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:85) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2573) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:102) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:850) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:612) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:592) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:469) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onComplete(FluxPeekFuseable.java:277) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:357) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:144) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:373) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:178) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2097) kafbat-ui | at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onComplete(FluxDefaultIfEmpty.java:134) kafbat-ui | at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144) kafbat-ui | at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onComplete(FluxMap.java:275) kafbat-ui | at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1866) kafbat-ui | at reactor.core.publisher.MonoCacheTime$CoordinatorSubscriber.signalCached(MonoCacheTime.java:337) kafbat-ui | at reactor.core.publisher.MonoCacheTime$CoordinatorSubscriber.onNext(MonoCacheTime.java:354) kafbat-ui | at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:200) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.innerNext(FluxConcatMapNoPrefetch.java:259) kafbat-ui | at reactor.core.publisher.FluxConcatMap$ConcatMapInner.onNext(FluxConcatMap.java:865) kafbat-ui | at reactor.core.publisher.FluxConcatMap$WeakScalarSubscription.request(FluxConcatMap.java:480) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.request(Operators.java:2331) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.request(FluxConcatMapNoPrefetch.java:339) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.request(MonoNext.java:108) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onSubscribe(MonoNext.java:70) kafbat-ui | at reactor.core.publisher.FluxConcatMapNoPrefetch$FluxConcatMapNoPrefetchSubscriber.onSubscribe(FluxConcatMapNoPrefetch.java:164) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.MonoCacheTime.subscribeOrReturn(MonoCacheTime.java:143) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:63) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onComplete(FluxPeekFuseable.java:940) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:85) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2573) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:102) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:850) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:612) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:592) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:469) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onComplete(FluxPeekFuseable.java:277) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:357) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:144) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:373) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:178) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onComplete(FluxPeekFuseable.java:940) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:85) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2573) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onComplete(MonoNext.java:102) kafbat-ui | at reactor.core.publisher.FluxFilter$FilterSubscriber.onComplete(FluxFilter.java:166) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:850) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:612) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:592) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:469) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onComplete(FluxPeekFuseable.java:277) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:357) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:144) kafbat-ui | at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:373) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:178) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:189) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onComplete(FluxFilterFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onComplete(FluxPeekFuseable.java:595) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2573) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.request(FluxPeekFuseable.java:437) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.request(FluxFilterFuseable.java:191) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onSubscribe(FluxFilterFuseable.java:87) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onSubscribe(FluxPeekFuseable.java:471) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:82) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:189) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onComplete(FluxMapFuseable.java:152) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onComplete(FluxMapFuseable.java:152) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onComplete(FluxMapFuseable.java:152) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onComplete(FluxFilterFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onComplete(FluxPeekFuseable.java:595) kafbat-ui | at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2573) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.request(FluxPeekFuseable.java:437) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.request(FluxFilterFuseable.java:191) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:171) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.request(MonoFlatMap.java:194) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2367) kafbat-ui | at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:2241) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:117) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96) kafbat-ui | at reactor.core.publisher.FluxFilterFuseable$FilterFuseableSubscriber.onSubscribe(FluxFilterFuseable.java:87) kafbat-ui | at reactor.core.publisher.FluxPeekFuseable$PeekFuseableConditionalSubscriber.onSubscribe(FluxPeekFuseable.java:471) kafbat-ui | at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:55) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:129) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondComplete(MonoFlatMap.java:245) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:305) kafbat-ui | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2097) kafbat-ui | at reactor.core.publisher.MonoCollectList$MonoCollectListSubscriber.onComplete(MonoCollectList.java:118) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.fastPath(FluxIterable.java:424) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:291) kafbat-ui | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.request(Operators.java:2067) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapInner.onSubscribe(MonoFlatMap.java:291) kafbat-ui | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.onSubscribe(Operators.java:2051) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:83) kafbat-ui | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:165) kafbat-ui | at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:74) kafbat-ui | at reactor.core.publisher.MonoNext$NextSubscriber.onNext(MonoNext.java:82) kafbat-ui | at reactor.core.publisher.FluxFilterWhen$FluxFilterWhenSubscriber.drain(FluxFilterWhen.java:302) kafbat-ui | at reactor.core.publisher.FluxFilterWhen$FluxFilterWhenSubscriber.onNext(FluxFilterWhen.java:140) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.slowPath(FluxIterable.java:335) kafbat-ui | at reactor.core.publisher.FluxIterable$IterableSubscription.request(FluxIterable.java:294) kafbat-ui | at reactor.core.publisher.FluxFilterWhen$FluxFilterWhenSubscriber.onSubscribe(FluxFilterWhen.java:200) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:201) kafbat-ui | at reactor.core.publisher.FluxIterable.subscribe(FluxIterable.java:83) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:53) kafbat-ui | at reactor.core.publisher.Mono.subscribe(Mono.java:4576) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:265) kafbat-ui | at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51) kafbat-ui | at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:76) kafbat-ui | at reactor.core.publisher.MonoDeferContextual.subscribe(MonoDeferContextual.java:55) kafbat-ui | at reactor.netty.http.server.HttpServer$HttpServerHandle.onStateChange(HttpServer.java:1176) kafbat-ui | at reactor.netty.ReactorNetty$CompositeConnectionObserver.onStateChange(ReactorNetty.java:715) kafbat-ui | at reactor.netty.transport.ServerTransport$ChildObserver.onStateChange(ServerTransport.java:481) kafbat-ui | at reactor.netty.http.server.HttpServerOperations.handleDefaultHttpRequest(HttpServerOperations.java:829) kafbat-ui | at reactor.netty.http.server.HttpServerOperations.onInboundNext(HttpServerOperations.java:774) kafbat-ui | at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:115) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) kafbat-ui | at reactor.netty.http.server.HttpTrafficHandler.channelRead(HttpTrafficHandler.java:262) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) kafbat-ui | at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) kafbat-ui | at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) kafbat-ui | at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333) kafbat-ui | at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:455) kafbat-ui | at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) kafbat-ui | at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) kafbat-ui | at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1357) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) kafbat-ui | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) kafbat-ui | at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:868) kafbat-ui | at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:799) kafbat-ui | at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:501) kafbat-ui | at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:399) kafbat-ui | at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) kafbat-ui | at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) kafbat-ui | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) kafbat-ui | at java.base/java.lang.Thread.run(Thread.java:840)
From: "Anand K" @.> To: "kafbat/kafka-ui" @.> Cc: "ivanbishop" @.>, "Mention" @.> Sent: Tuesday, November 19, 2024 11:05:27 AM Subject: Re: [kafbat/kafka-ui] OIDC (Okta) issue with using callback handler for AWS_IAM_MSK (Issue #642)
I looked at your config and compared to mine, and pretty much same except I dont have jwk-set-uri in okta config I have given permissions to consumer as you will to browse the topics. I have additional glue serde, and audit settings but those are optional.
Which servers are you getting 500 errors from? from kafkaui or okta? it seems from the logs authentication is working and its sending the group kafbat-admins back.
— Reply to this email directly, [ https://github.com/kafbat/kafka-ui/issues/642#issuecomment-2486519542 | view it on GitHub ] , or [ https://github.com/notifications/unsubscribe-auth/ABPMBW2WKA3G27XMGZ6WQWT2BODXPAVCNFSM6AAAAABQ4KVCPOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOBWGUYTSNJUGI | unsubscribe ] . You are receiving this because you were mentioned. Message ID: @.***>
Issue submitter TODO list
main
-labeled docker image and the issue still persists thereDescribe the bug (actual behavior)
See https://discord.com/channels/897805035122077716/1298004148066848849 Validate with Okta works OK, but om submit I get a 500 error. logit.txt YML-config-compose.zip
Expected behavior
Validate works on adding a new cluster but I expect Submit to work
Your installation details
Run via (compose in ZIP) docker-compose -f ~/kui/docker-compose.yml up -d and the external rbac file in ZIP too
Steps to reproduce
launch container, try and configure a new cluster
Screenshots
No response
Logs
logit.txt
Additional context
No response