AKHQ自定义配置完全教程:UI选项、数据格式和高级功能的个性化设置

【免费下载链接】akhq Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more... 【免费下载链接】akhq 项目地址: https://gitcode.com/gh_mirrors/ak/akhq

AKHQ是一款功能强大的Apache Kafka GUI工具,能够帮助用户轻松管理Kafka主题、消费者组、Schema Registry和Connect等组件。本教程将详细介绍如何通过自定义配置来优化AKHQ的UI选项、数据格式和高级功能,让你的Kafka管理体验更加高效和个性化。

准备工作:获取AKHQ项目

要开始使用AKHQ,首先需要克隆项目仓库。打开终端,执行以下命令:

git clone https://gitcode.com/gh_mirrors/ak/akhq

克隆完成后,你可以在项目目录中找到配置文件和相关资源。

UI选项个性化:打造专属操作界面

AKHQ提供了丰富的UI选项配置,让你可以根据自己的使用习惯定制界面。这些配置主要集中在application.example.yml文件中,通过修改该文件,你可以轻松调整UI的各种行为。

主题列表视图设置

application.example.yml文件中,你可以通过ui-options部分来配置主题列表的默认视图。例如:

akhq:
  ui-options:
    topic:
      default-view: ALL  # 可选值: ALL, HIDE_INTERNAL, HIDE_INTERNAL_STREAM, HIDE_STREAM
      skip-consumer-groups: false  # 是否跳过加载消费者组信息
      skip-last-record: true  # 是否跳过加载最后一条记录的日期信息
      show-all-consumer-groups: true  # 是否展开显示所有消费者组
      groups-default-view: ALL  # 消费者组默认视图: ALL, HIDE_EMPTY

这些配置项允许你控制主题列表的显示内容和方式,帮助你快速找到需要管理的主题。

主题数据视图设置

对于主题数据的显示,AKHQ也提供了灵活的配置选项:

akhq:
  ui-options:
    topic-data:
      sort: NEWEST  # 默认排序方式: OLDEST, NEWEST
      date-time-format: ISO  # 时间格式: RELATIVE, ISO

通过这些设置,你可以控制主题数据的排序方式和时间显示格式,使数据查看更加符合你的习惯。

数据格式定制:让数据展示更清晰

AKHQ支持对数据格式进行定制,特别是日期时间格式和数据脱敏,帮助你更好地理解和保护数据。

日期时间格式设置

AKHQ提供了两种日期时间显示格式:相对时间(RELATIVE)和ISO标准格式(ISO)。你可以在application.example.yml中进行配置:

akhq:
  ui-options:
    topic-data:
      date-time-format: ISO  # 或 RELATIVE
  • RELATIVE:显示相对当前时间的差值,如"2小时前"、"3天前"等,适合快速了解数据的时间远近。
  • ISO:显示标准的ISO 8601格式,如"2023-10-05T14:48:00Z",适合需要精确时间记录的场景。

数据脱敏配置

为了保护敏感数据,AKHQ提供了数据脱敏功能。你可以在application.example.yml中配置脱敏规则:

akhq:
  security:
    data-masking:
      jsonMaskReplacement: "xxxx"  # 默认替换字符串
      jsonFilters:
        - description: "Mask user phone numbers"
          topic: "user-data"
          keys: ["phone", "mobile"]
      filters:
        - description: "Mask credit card numbers"
          search-regex: "\\b(\\d{4})\\d{12}(\\d{4})\\b"
          replacement: "$1XXXXXXXX$2"

上述配置中,jsonFilters用于指定JSON字段的脱敏规则,filters则用于通过正则表达式匹配并替换敏感数据。例如,信用卡号将被替换为"XXXX-XXXX-XXXX-1234"的形式。

高级功能配置:提升Kafka管理效率

除了UI和数据格式的定制,AKHQ还提供了一些高级功能配置,帮助你更高效地管理Kafka集群。

连接配置

AKHQ支持同时管理多个Kafka集群,你可以在application.example.yml中配置集群连接信息:

akhq:
  connections:
    my-cluster:
      properties:
        bootstrap.servers: "kafka1:9092,kafka2:9092"
      schema-registry:
        url: "http://schema-registry:8081"
      connect:
        - name: "connect-cluster-1"
          url: "http://connect:8083"

通过这种方式,你可以轻松切换和管理不同环境的Kafka集群。

权限控制

AKHQ提供了细粒度的权限控制,你可以在application.example.yml中配置用户角色和权限:

akhq:
  security:
    roles:
      topic-read:
        - resources: ["TOPIC", "TOPIC_DATA"]
          actions: ["READ"]
      topic-admin:
        - resources: ["TOPIC", "TOPIC_DATA"]
          actions: ["READ", "CREATE", "DELETE"]
    groups:
      admin:
        - role: topic-admin
      viewer:
        - role: topic-read
    basic-auth:
      - username: admin
        password: "sha256:your-hashed-password"
        groups:
          - admin

通过合理配置权限,你可以确保不同用户只能访问其工作所需的资源,提高系统安全性。

配置文件位置与加载顺序

AKHQ的配置文件主要有以下几个:

  • application.yml:默认配置文件
  • application.example.yml:示例配置文件,包含所有可配置项
  • application-dev.yml:开发环境配置文件

配置文件的加载顺序是:application.yml < application-dev.yml,后者会覆盖前者的配置。你可以根据自己的需求修改这些文件,或者创建新的配置文件。

总结

通过本教程,你已经了解了如何自定义AKHQ的UI选项、数据格式和高级功能。这些配置可以帮助你打造一个更符合个人习惯和工作需求的Kafka管理界面。无论是调整主题列表的显示方式,还是配置数据脱敏规则,AKHQ都提供了灵活而强大的配置选项。

开始尝试这些配置,提升你的Kafka管理效率吧!如果你需要更多帮助,可以参考项目中的官方文档,获取更详细的配置说明和最佳实践。

【免费下载链接】akhq Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more... 【免费下载链接】akhq 项目地址: https://gitcode.com/gh_mirrors/ak/akhq

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐