Add `event_name` to Audit Event HTTP API

The Audit Event HTTP API lacks parity with the Streaming API: the Streaming API sends in event_name, whereas the HTTP API does not. event_name is really important for metrics and tracking of Audit Events. It'd be great if this field was in both parts of the API.

This issue suggests adding event_name to the audit_events table, which seems like a great step — but hasn't seen any updates in several months. A very simple workaround might be to add event_name to the additional_details hash in lib/gitlab/audit/auditor.rb ... which is not ideal, but would get the field into the HTTP API quickly. Curious as to your thoughts!

A draft of the very simple workaround is at !149449 (merged); a more complicated solution, which would require running a migration, is at !149454 (closed)

(Disclosure: I'm an engineer at DataDog, and we're starting to work on a Audit Log Integration. We want to use the HTTP API, as it's available to more customers, but we need event_name to do so.)

Edited Apr 15, 2024 by Thor Kell
Assignee Loading
Time tracking Loading