Skip to content

Enable streaming of audit events to consolidated instance level destinations

We have currently unified different kind of external streaming destinations in a single entity for GitLab instances. Now we want to stream any audit events to these destinations by invoking helper methods of different kinds of destinations.

Implementation plan

  1. Create a base helper class for streaming audit events, similar to https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/lib/audit_events/strategies/external_destination_strategy.rb.
  2. Separate checks for instance and group level destinations in different files. Make sure that instance and group level code resides in these files only and other files should be generic.
  3. Create separate helper files for streaming to different kind of destinations, for example for s3 refer https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/lib/audit_events/strategies/base_amazon_s3_destination_strategy.rb and similarly for http and gcp.
Edited by Hitesh Raghuvanshi