Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consumer group with slash crashed the ui #1101

Closed
baganokodo opened this issue May 25, 2022 · 10 comments
Closed

Consumer group with slash crashed the ui #1101

baganokodo opened this issue May 25, 2022 · 10 comments
Assignees
Labels
bug Something isn't working good first issue Good for newcomers ui Need an ui update

Comments

@baganokodo
Copy link

baganokodo commented May 25, 2022

Hi,

I suspect this issue is caused by special chars like "/" and ":" in our consumer group names. Could you confirm that special chars are not accepted in consumer group names?

sample consumer groups, "data/data-serving:forwarder", "local_test/hostname.local"

Thanks

@tchiotludo
Copy link
Owner

can you send a screenshot please?

@baganokodo
Copy link
Author

Thanks @tchiotludo for the quick response. I feel it quickly popped a red error banner, and the entire page was gone instantaneously. I checked the AKHQ log, nothing special, no errors. The web page is totally blank, it is black mostly like because the chrome theme I selected. Page source only shows some Javascript references.

Thanks

@tchiotludo
Copy link
Owner

It's seems that there is an hard JavaScript error, can you provide the error from JavaScript console from chrome ?

@baganokodo
Copy link
Author

baganokodo commented May 26, 2022

thanks @tchiotludo , below is the page source.

<!doctype html><html lang="en"><head><meta charset="utf-8"/><base href="/ui/"><link rel="icon" href="/ui/favicon.ico"/><link rel="manifest" href="/ui/manifest.json"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#33b5e5"/><script>const AKHQ_PREFIX_UI="/ui",AKHQ_PREFIX_PATH=function(){const n="/ui".split("/");return n.pop(),n.join("/")}()</script><meta name="description" content="Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more..."/><title>AKHQ</title><link href="/ui/static/css/2.1e4ddb81.chunk.css" rel="stylesheet"><link href="/ui/static/css/main.ae4160af.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function r(r){for(var n,f,l=r[0],a=r[1],i=r[2],c=0,s=[];c<l.length;c++)f=l[c],Object.prototype.hasOwnProperty.call(o,f)&&o[f]&&s.push(o[f][0]),o[f]=0;for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n]);for(p&&p(r);s.length;)s.shift()();return u.push.apply(u,i\|\|[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,l=1;l<t.length;l++){var a=t[l];0!==o[a]&&(n=!1)}n&&(u.splice(r--,1),e=f(f.s=t[0]))}return e}var n={},o={1:0},u=[];function f(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,f),t.l=!0,t.exports}f.m=e,f.c=n,f.d=function(e,r,t){f.o(e,r)\|\|Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(e,r){if(1&r&&(e=f(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)f.d(t,n,function(r){return e[r]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/ui/";var l=this["webpackJsonpakhq-front-end"]=this["webpackJsonpakhq-front-end"]\|\|[],a=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var p=a;t()}([])</script><script src="/ui/static/js/2.d3ab78fe.chunk.js"></script><script src="/ui/static/js/main.381f399b.chunk.js"></script></body></html>
-- | --


<!doctype html><html lang="en"><head><meta charset="utf-8"/><base href="[/ui/](https://akhq-dev.cbhq.net/ui/)"><link rel="icon" href="[/ui/favicon.ico](https://akhq-dev.cbhq.net/ui/favicon.ico)"/><link rel="manifest" href="[/ui/manifest.json](https://akhq-dev.cbhq.net/ui/manifest.json)"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#33b5e5"/><script>const AKHQ_PREFIX_UI="/ui",AKHQ_PREFIX_PATH=function(){const n="/ui".split("/");return n.pop(),n.join("/")}()</script><meta name="description" content="Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more..."/><title>AKHQ</title><link href="[/ui/static/css/2.1e4ddb81.chunk.css](https://akhq-dev.cbhq.net/ui/static/css/2.1e4ddb81.chunk.css)" rel="stylesheet"><link href="[/ui/static/css/main.ae4160af.chunk.css](https://akhq-dev.cbhq.net/ui/static/css/main.ae4160af.chunk.css)" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function r(r){for(var n,f,l=r[0],a=r[1],i=r[2],c=0,s=[];c<l.length;c++)f=l[c],Object.prototype.hasOwnProperty.call(o,f)&&o[f]&&s.push(o[f][0]),o[f]=0;for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n]);for(p&&p(r);s.length;)s.shift()();return u.push.apply(u,i||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,l=1;l<t.length;l++){var a=t[l];0!==o[a]&&(n=!1)}n&&(u.splice(r--,1),e=f(f.s=t[0]))}return e}var n={},o={1:0},u=[];function f(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,f),t.l=!0,t.exports}f.m=e,f.c=n,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(e,r){if(1&r&&(e=f(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)f.d(t,n,function(r){return e[r]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/ui/";var l=this["webpackJsonpakhq-front-end"]=this["webpackJsonpakhq-front-end"]||[],a=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var p=a;t()}([])</script><script src="[/ui/static/js/2.d3ab78fe.chunk.js](https://akhq-dev.cbhq.net/ui/static/js/2.d3ab78fe.chunk.js)"></script><script src="[/ui/static/js/main.381f399b.chunk.js](https://akhq-dev.cbhq.net/ui/static/js/main.381f399b.chunk.js)"></script></body></html>

@tchiotludo
Copy link
Owner

I mean dev tools console (F12) and give me this :
image, not the html source

@baganokodo
Copy link
Author

baganokodo commented May 26, 2022

Screen Shot 2022-05-26 at 1 49 11 PM
thanks a lot, it seems caused by our weird consumer group name.

@tchiotludo tchiotludo added bug Something isn't working ui Need an ui update labels May 26, 2022
@tchiotludo tchiotludo added the good first issue Good for newcomers label May 26, 2022
@tchiotludo tchiotludo changed the title Web page blacked out when loading consumer groups Consumer group with slash crashed the ui May 26, 2022
@tchiotludo
Copy link
Owner

Not really if it can be fixed but it's a real bug on our side.

PR are welcome ☺️

@baganokodo
Copy link
Author

found a good sample on URL encoder, https://www.baeldung.com/java-url-encoding-decoding, I will try to make a PR
thanks very much

@rdrck47
Copy link
Contributor

rdrck47 commented Jul 5, 2022

Hello! Is anyone working on this? I would like to take this issue!

@tchiotludo
Copy link
Owner

No one is one it, it's assign to you 👍

12ushan added a commit to giffgaff/akhq that referenced this issue Nov 22, 2022
* fix(topicdata): handle unsupported DescribeLogDirs  for MSK Serverless (tchiotludo#1113)

close tchiotludo#1112

* chore(deps): upgrade aws-msk-iam-auth to 1.1.4 to avoid vulnerability (tchiotludo#1114)

https://github.com/aws/aws-msk-iam-auth/releases/tag/v1.1.4 shows several fixes for CVEs

* chore(docs): add tui to usage list (tchiotludo#1118)

* chore(docs): update alt text for tui (tchiotludo#1119)

* chore(docs): add tui logo to public assets (tchiotludo#1120)

* feat(topicdata): adding serializer for protobuf schema registry (tchiotludo#1117)

* feat(topicdata): allow integer/long to be serialized as float/double when using AVRO schema. (tchiotludo#1123)

close tchiotludo#1122

* feat(ui): add pagination size of topic list (tchiotludo#1109)

relate tchiotludo#1051

* feat(acsl): add  Pattern Type to ACLs Panel Information (tchiotludo#1125)

close tchiotludo#1115

* fix(docker): run upgrade in order to reduce CVEs (tchiotludo#1134)

libssl1.1
dpkg
libldap-common

close tchiotludo#1132

* feat(docker): add healthcheck (tchiotludo#1136)


Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>

* fix(ui): handle consumer group with slash (tchiotludo#1143)

close tchiotludo#1101

* Revert "chore(readme): add redpanda sponsors"

This reverts commit ab9a444.

* fix(helm): adding namespace to kubectl port-forward Helm Chart NOTES (tchiotludo#1171)

Co-authored-by: rogerio <r.fonseca@serrala.com>

* fix(helm): correct port for port-forward is 8080 (tchiotludo#1178)

Fix port displayed at the end of the helm release.

It displays `{{ .Values.service.port }}` which is `80` per default, it should be `8080`.

* feat(docker): change upstream image from openjdk to eclipse-temurin (tchiotludo#1179)


Signed-off-by: Erik Godding Boye <egboye@gmail.com>

* fix(core): close consumer when returning null after calculating offset for newest sort (tchiotludo#1069)

fix a memory leak 

Co-authored-by: Neeraj.singh <email@test.com>

* fix(ui): load, display and store settings on settings screen if no settings have been stored yet (tchiotludo#1161)

Co-authored-by: David Müller <david.mueller@codecentric.de>

* feat(docs): update vuepress to last versions

* chore(docs): add Fresha to whos using (tchiotludo#1111)

* chore(version): update to 0.22.0

* fix(ui): showing protobuf schema in versions tab crash (tchiotludo#1189)

Fixes tchiotludo#1188

* feat(docs): helm example with basic auth and aws msk (tchiotludo#1192)


Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>

* feat(helm): add networkpolicy (tchiotludo#1193)

Signed-off-by: Quan TRAN <itscaro@users.noreply.github.com>

* feat(helm): add configuration for readiness & livenessProbe

* chore(deps) add missing scala dependent modules (tchiotludo#1223)

* feat(docs): add a Kestra banner

* fix(topicdata): protection against tombstone message and headers

close tchiotludo#1210

* feat(webserver): add custom headers configuration (tchiotludo#1235)


Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>

* chore(docs): fix typo (tchiotludo#1240)

* chore(cicd): update slack channel

* fix(ui): decimals are not parsed correctl (tchiotludo#1246)

replaced 'json-bigint' parser with 'lossless-json', this replacement allows for pretty-printing the json data, but still keeping the original values especially for floating numbers and bigints.

fix tchiotludo#1006

* core(deps): Updated micronaut to latest version (tchiotludo#1247)

and fixes to tests to have a successful build

close tchiotludo#1215

* fix(ui): Disabled edit access topic configs when role has reader mode (tchiotludo#1237)

close tchiotludo#1219

* fix(ui): encode groupId to allow '&' as part of the name of a consumer group (tchiotludo#1184)


relate to tchiotludo#1143

* feat(ui): faster topic-data search & sorting (tchiotludo#1209)


Co-authored-by: Max Bebök <beboek@etracker.com>

* feat(topicdata): added fix for incorrect datatype and missing fields in the json while producing to topic (tchiotludo#1233)

* feat(ui): Use `set INLINE_RUNTIME_CHUNK=false&& ` in react build. (tchiotludo#1238)

See also https://drag13.io/posts/react-inline-runtimer-chunk/index.html. This is to make _Content-Security-Policy_ work when `unsafe-inline` is not set.

Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>

* fix(node):  fix nullpointer when trying to view cluster information in MSK Serverless (tchiotludo#1227)

close tchiotludo#1226

Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>

* chore(deps): update all java deps

* feat(ui): optimze svgs with https://jakearchibald.github.io/svgomg/ (tchiotludo#1252)

In preparation for a React upgrade, see tchiotludo#1243

* feat(topicdata): support duplicate header keys (tchiotludo#1258)

close tchiotludo#1257 

Co-authored-by: rafanyan <raphael.afanyan@nexthink.com>

* chore(deps): update codeql actions to supported version (tchiotludo#1253)

See
https://github.blog/changelog/2022-04-27-code-scanning-deprecation-of-codeql-action-v1/
for context

* chore(version): update to 0.23.0

* feat(ui): update node to the latest lts version (tchiotludo#1251)

* Update node to the latest LTS version
* Replace node-sass with sass
* Also use the correct version of react-test-renderer.
* Update react scripts so we don't use insecure hashing functions
* Do not check eslint for production build

See tchiotludo#1243 for more information.

* fix(topicdata): fix null key and value (tchiotludo#1261)

Co-authored-by: alozano3 <alozano@caixabanktech.com>

* feat(ui): fix eslint warnings (tchiotludo#1254)


Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>

* fix(topci): create topics with configuration in one call (tchiotludo#1273)

close tchiotludo#1272

Signed-off-by: Erik Godding Boye <egboye@gmail.com>
Signed-off-by: Quan TRAN <itscaro@users.noreply.github.com>
Co-authored-by: Mitsuaki Ito <itoumagic@gmail.com>
Co-authored-by: tooptoop4 <33283496+tooptoop4@users.noreply.github.com>
Co-authored-by: Steven Masala <smasala@gmail.com>
Co-authored-by: Steven Masala <me@smasala.com>
Co-authored-by: Andrei Strelnikov <AlarArelon@gmail.com>
Co-authored-by: Marcello <marcellorego@gmail.com>
Co-authored-by: 10xtechie <102477169+10xtechie@users.noreply.github.com>
Co-authored-by: ThomasSanson <93382375+ThomasSanson@users.noreply.github.com>
Co-authored-by: Ludovic DEHON <tchiot.ludo@gmail.com>
Co-authored-by: Rodrigo Rodriguez Ramos <51171995+rdrck47@users.noreply.github.com>
Co-authored-by: Rogério Fonseca <rogerio@teccross.com.br>
Co-authored-by: rogerio <r.fonseca@serrala.com>
Co-authored-by: Thomas <12407096+thomas-chauvet@users.noreply.github.com>
Co-authored-by: Erik Godding Boye <egboye@gmail.com>
Co-authored-by: neeraj-singh47 <neeraj-singh47@users.noreply.github.com>
Co-authored-by: Neeraj.singh <email@test.com>
Co-authored-by: sam0r040 <93372330+sam0r040@users.noreply.github.com>
Co-authored-by: David Müller <david.mueller@codecentric.de>
Co-authored-by: Piotr Rybarczyk <argonuspiotr@gmail.com>
Co-authored-by: Ali Akhtari <ali_akhtari@live.com>
Co-authored-by: Alex Vaque <alex.vaque@gmx.com>
Co-authored-by: Quan TRAN <itscaro@users.noreply.github.com>
Co-authored-by: Adi Wehrli <adi@theadi.ch>
Co-authored-by: lucapette <ciao@lucapette.me>
Co-authored-by: tristanessquare <44587610+tristanessquare@users.noreply.github.com>
Co-authored-by: meeraj257 <nagaraj.vn@aexp.com>
Co-authored-by: Gnana_Jeyam <gnanajeyam95@gmail.com>
Co-authored-by: owidder <oliver.widder@gmail.com>
Co-authored-by: Stuff is on GitLab <beboek.max@gmail.com>
Co-authored-by: Max Bebök <beboek@etracker.com>
Co-authored-by: Raphael <raphyninho@hotmail.fr>
Co-authored-by: rafanyan <raphael.afanyan@nexthink.com>
Co-authored-by: Albert <31214345+alozano3@users.noreply.github.com>
Co-authored-by: alozano3 <alozano@caixabanktech.com>
Co-authored-by: Emmanuel <emmanuel.brard@getyourguide.com>
@tchiotludo tchiotludo moved this to Done in Backlog Jun 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working good first issue Good for newcomers ui Need an ui update
Projects
Status: Done
Development

No branches or pull requests

3 participants