provectus / kafka-ui

Open-Source Web UI for Apache Kafka Management
Apache License 2.0
9.57k stars 1.17k forks source link

Usage of ProtobufRawDecoder unclear #4382

Open PreNoob opened 7 months ago

PreNoob commented 7 months ago

Issue submitter TODO list

Describe the bug (actual behavior)

I want to use the ProtobufRawDecoder as mentioned in the docs here.

I configured it like so:

  kafka:
    clusters:
      - name: some-name
        bootstrapservers: some-bootstrapservers
        properties:
          ....
        serde:
          - name: ProtobufRawDecoder

Resulting in the following error

Caused by: com.provectus.kafka.ui.exception.ValidationException: 'className' property not set for custom serde ProtobufRawDecoderRow

After that I've checked the code for the protobuf raw serde and the name here is ProtobufDecodeRaw.

  kafka:
    clusters:
      - name: some-name
        bootstrapservers: some-bootstrapservers
        properties:
          ....
        serde:
          - name: ProtobufDecodeRaw

results in a similar error

Caused by: com.provectus.kafka.ui.exception.ValidationException: 'className' property not set for custom serde ProtobufDecodeRaw

Adding className: com.provectus.kafka.ui.serdes.builtin.ProtobufRawSerde resulted in the following error:

Caused by: com.provectus.kafka.ui.exception.ValidationException: 'filePath' property not set for custom serde ProtobufDecodeRaw

Expected behavior

I would like to have proper documentation on how to setup/use the ProtobufRawDecoder.

Your installation details

Steps to reproduce

Deployed the helm chart with the above mentioned configuration.

Screenshots

No response

Logs

No response

Additional context

No response

github-actions[bot] commented 7 months ago

Hello there PreNoob! 👋

Thank you and congratulations 🎉 for opening your very first issue in this project! 💖

In case you want to claim this issue, please comment down below! We will try to get back to you as soon as we can. 👀

pranavkapoorfanatics commented 7 months ago

We are stuck here too. How do you make this work?

pranavkapoorfanatics commented 7 months ago

We were able to get this to work by using the master version of the image rather than latest. As @PreNoob pointed out, the Serde name has to be ProtobufDecodeRaw

rickybasse commented 6 days ago

coming back to this one to log my experience

I tried to follow @pranavkapoorfanatics instructions and indeed running the master tag of the image plus configuring the serde: - name: ProtobufDecodeRaw did not break the kafka-ui. unfortunately tho I could not see any messages being deserialised, nothing changed basically.

I would like to reiterate @PreNoob initial suggestion, would be great to have proper documentation on how to setup/use the ProtobufRawDecoder

SubhraB commented 5 days ago

Got it working by using the latest helm chart from here https://artifacthub.io/packages/helm/kafka-ui/kafka-ui

Added below env variables, worked like charm.

KAFKA_CLUSTERS_0_SERDE_0_NAME: ProtobufDecodeRaw
KAFKA_CLUSTERS_0_SERDE_0_TOPICVALUESPATTERN: <<topicsPattern>>

Yes, I believe documentation requires some update.

rickybasse commented 1 day ago

hey @SubhraB, are you also using the master tag for the docker image? 😊

SubhraB commented 1 day ago

Using helm chart version 1.4.5, I believe it is behind main, but it works.