Skip to content

Strict mode for audit initialisation #1601

@timchenko-a

Description

@timchenko-a

Issue submitter TODO list

  • I've searched for an already existing issues here
  • I'm running a supported version of the application which is listed here and the feature is not present there

Is your proposal related to a problem?

I run Kafka-UI as a main access point to our Kafka clusters for developers. We have a regulator requirement to collect all audit logs from Kafka-UI. Kafka-UI put audit logs to a topic, Vector collects logs from the topic and put to S3 bucket.
The main issue is if topic audit initialisation fails for whatever reason, Kafka-UI fallbacks to console-only logging. And it's quite hard to spot such cases, I ended up setting up log-based alert for Kafka-UI, which kind of works but is not the best approach as for me.

Describe the feature you're interested in

It would be good to have some option for strict audit initialisation. E.g. something like this, example based on documentation:

audit:
  topic-audit-enabled: false  # Enable/disable Kafka topic audit logs
  console-audit-enabled: false  # Enable/disable console audit output
  topic: audit-topic-name  # Kafka topic for audit entries
  audit-topics-partitions: 3  # Number of partitions for the audit topic
  level: ALL  # ALL = log all actions, ALTER_ONLY = only mutating actions
->  strict-init: false # Enable/disable Kafka-UI failure if topic audit init fails 
  audit-topic-properties:
    "retention.ms": 43200000  # Audit log retention in ms (12 hours)

If this option is set to true and topic audit init fails, Kafka-UI will throw an exception and fail, making it easier to spot such kind of issues + prevent users from doing non-auditable actions.

Describe alternatives you've considered

No response

Version you're running

8b5494b

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions