tchiotludo / akhq

Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more...
https://akhq.io/
Apache License 2.0
3.41k stars 659 forks source link

Not able to see any Topics list on UI pages #1142

Closed hbairagi8 closed 2 years ago

hbairagi8 commented 2 years ago

I seem to be having an issue with Kafka broker and topic information in the GUI. I can see nodes and topics associated with it, but can't see topics list info in the GUI? while checking the cluster from GUI it is saying No data available. Attaching the images and YAML files(both of these having some dummy values in them, due to confidentiality with the details) Figure 1 - shows the error Figure 2 - shows the broker endpoints but partitions are not loading. We have just put the broker, username, and password values as dummy values. Apart from these three, we haven't manipulated anything in the application YAML file. Please help us to resolve this issue. Thank you in advance

Figure1

Figure 2

Application YAML file content

micronaut:
#  security:
#    enabled: false
#    # Ldap authenticaton configuration
#    ldap:
#      default:
#        enabled: false
#        context:
#          server: 'ldap://ldap.forumsys.com:389'
#          managerDn: 'cn=read-only-admin,dc=example,dc=com'
#          managerPassword: 'password'
#        search:
#          base: "dc=example,dc=com"
#        groups:
#          enabled: false
#          base: "dc=example,dc=com"
#    # OIDC authentication configuration
#    oauth2:
#      enabled: false
#      clients:
#        oidc:
#          client-id: "<client-id>"
#          client-secret: "<client-secret>"
#          openid:
#            issuer: "<issuer-url>"
#    token:
#      jwt:
#        signatures:
#          secret:
#            generator:
#              secret: pleasechangeme
  server:
    context-path: "/akhq" # if behind a reverse proxy, path to akhq without trailing slash (optional). Example: akhq is
                     # behind a reverse proxy with url http://my-server/akhq, set context-path: "/akhq".
                     # Not needed if you're behind a reverse proxy with subdomain http://akhq.my-server/
akhq:
  server:
    access-log: # Access log configuration (optional)
      enabled: true # true by default
      name: org.akhq.log.access # Logger name
      format: "[Date: {}] [Duration: {} ms] [Url: {} {}] [Status: {}] [Ip: {}] [User: {}]" # Logger format

  # default kafka properties for each clients, available for admin / producer / consumer (optional)
  clients-defaults:
    consumer:
      properties:
        isolation.level: read_committed

  # list of kafka cluster available for akhq
  connections:
    my-cluster-sasl:
      properties:
        bootstrap.servers: "broker_values_dummy"
        security.protocol: SASL_SSL
        sasl.mechanism: SCRAM-SHA-512
        sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="username" password="password";
# Ui Cluster Options (optional)
      ui-options:
        topic:
          default-view: ALL  # default list view (ALL, HIDE_INTERNAL, HIDE_INTERNAL_STREAM, HIDE_STREAM). Overrides default
          skip-consumer-groups: true # Skip loading consumer group information when showing topics. Overrides default
          skip-last-record: true  # Skip loading last record date information when showing topics.  Overrides default
          show-all-consumer-groups: true # Expand list of consumer groups instead of showing one. Overrides default.
        topic-data:
          sort: NEWEST # default sort order (OLDEST, NEWEST) (default: OLDEST).  Overrides default
          date-time-format: ISO # format of message timestamps (RELATIVE, ISO) (default: RELATIVE)

  pagination:
    page-size: 25 # number of elements per page (default : 25)
    threads: 16 # Number of parallel threads to resolve page

  # Configure avro-to-json serializer
  avro-serializer:
    json.serialization.inclusions: # ObjectMapper serialization inclusions used for avro-to-json conversion for display in the UI.
    # Supports Enums in JsonInclude.Include from Jackson library
      - NON_NULL

  # Topic list display options (optional)
  topic:
    retention: 172800000 # default retention period when creating topic
    partition: 3 #  default number of partition when creating topic
    replication: 3 # default number of replicas when creating topic
    internal-regexps: # list of regexp to be considered as internal (internal topic can't be deleted or updated)
      - "^_.*$"
      - "^.*_schemas$"
      - "^.*connect-config$"
      - "^.*connect-offsets$1"
      - "^.*connect-status$"
    stream-regexps: # list of regexp to be considered as internal stream topic
      - "^.*-changelog$"
      - "^.*-repartition$"
      - "^.*-rekey$"
    skip-consumer-groups: false # Skip loading consumer group information when showing topics
    skip-last-record: false # Skip loading last record date information when showing topics
    show-all-consumer-groups: true # Expand list of consumer groups instead of showing one.
    # Retry options for topic operations
    retry:
      topic-exists: # Delay between retries when checking for existence of newly created topics. This is needed as it might take the kafka broker a few seconds to create new topics.
        delay: "3s"

  # Topic display data options (optional)
  topic-data:
    size: 50 # max record per page (default: 50)
    poll-timeout: 100000 # The time, in milliseconds, spent waiting in poll if data is not available in the buffer.
    kafka-max-message-length: 1000000 # Max message length allowed to send to UI when retrieving a list of records in bytes.

  # Ui Global Options (optional)
  ui-options:
    topic:
      default-view: ALL  # default list view (ALL, HIDE_INTERNAL, HIDE_INTERNAL_STREAM, HIDE_STREAM). Overrides default
      skip-consumer-groups: false # Skip loading consumer group information when showing topics. Overrides default
      skip-last-record: true  # Skip loading last record date information when showing topics.  Overrides default
      show-all-consumer-groups: true # Expand list of consumer groups instead of showing one. Overrides default.
    topic-data:
      sort: OLDEST # default sort order (OLDEST, NEWEST) (default: OLDEST).  Overrides default

  # Auth & Roles (optional)
  security:
    default-group: admin # Default groups for all the user even unlogged user
    # Groups definition
    groups:
      admin: # unique key
        name: admin # Group name
        roles:  # roles for the group
          - topic/read
          - topic/insert
          - topic/delete
          - topic/config/update
          - node/read
          - node/config/update
          - topic/data/read
          - topic/data/insert
          - topic/data/delete
          - group/read
          - group/delete
          - group/offsets/update
          - registry/read
          - registry/insert
          - registry/update
          - registry/delete
          - registry/version/delete
          - acls/read
          - connect/read
          - connect/insert
          - connect/update
          - connect/delete
          - connect/state/update
        attributes:
          # Regexp list to filter topic available for group
          topics-filter-regexp:
            - "test.*"
          # Regexp list to filter connect configs visible for group
          connects-filter-regexp:
            - "^test.*$"
          # Regexp list to filter consumer groups visible for group
          consumer-groups-filter-regexp:
            - "consumer.*"
      topic-reader: # unique key
        name: topic-reader # Other group
        roles:
          - topic/read
        attributes:
          topics-filter-regexp:
            - "test\\.reader.*"

    # Basic auth configuration
    basic-auth:
      - username: admin # Username
        password: admin # Password in sha256
        groups: # Groups for the user
          - admin
          - topic-reader
hbairagi8 commented 2 years ago

Hi, Need some help with this issue. URGENT

tchiotludo commented 2 years ago

If you want some URGENT help, please provide:

hbairagi8 commented 2 years ago

akhq_logs.txt Hi attaching the logs from akhq and here is the broker configuration(the password,username and broker endpoints are hidden here)

connections:
    my-cluster-sasl:
      properties:
        bootstrap.servers: "broker_values_dummy"
        security.protocol: SASL_SSL
        sasl.mechanism: SCRAM-SHA-512
        sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="username" password="password";
hbairagi8 commented 2 years ago

Hi, Can you please give some details here? I have attached the logs and application file in above comment

tchiotludo commented 2 years ago

Nothing relevant on the logs or the configuration files.

I think your users don't have any rights on this cluster or may have a regexp that limit the topic visible. Can you try with your users on kcat to validate this ?