Add observability to Snowplow tracking
What does this MR do?
Recently we detected abnormal drop in number of recorded snowplow events, however trying to identify reason for that with current level of observability at GitLab application layer yield no results. Therefore this MR aims to increase observability into Snowplow tracking process by adding 3 new Prometheus metrics, and logging for failed events emissions.
Screenshots or Screencasts (strongly suggested)
Test for total and failed snowplow events counters test_prom
Test for successfull and total snowplow events counters test_prom_4
Does this MR meet the acceptance criteria?
Conformity
-
I have included changelog trailers, or none are needed. (Does this MR need a changelog?) -
I have added/updated documentation, or it's not needed. (Is documentation required?) -
I have properly separated EE content from FOSS, or this MR is FOSS only. (Where should EE code go?) -
I have added information for database reviewers in the MR description, or it's not needed. (Does this MR have database related changes?) -
I have self-reviewed this MR per code review guidelines. -
This MR does not harm performance, or I have asked a reviewer to help assess the performance impact. (Merge request performance guidelines) -
I have followed the style guides. -
This change is backwards compatible across updates, or this does not apply.
Edited by Mikołaj Wawrzyniak