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
- 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.
- Separate checks for
instance
andgroup
level destinations in different files. Make sure that instance and group level code resides in these files only and other files should be generic. - 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