Create initial version of the package
This MR created an initial version of the package.
The package is essentially is a wrapper around snowplow-tracker
library. We just added some Gitlab specific schemas for tracked events.
The underlying library uses singleton, but I chosen to create instance every time because our library will be used in web apps and extra tracking data (user credentials) will be stored in the wrapper and set for each tracker invocation.
Another nuance here, the snowplow library was created primary for mobile devices and uses sqlite for storing message queue. We can't use file system so I created a simple memory storage (Memory
) class. In the future we can consider adding Redis storage for persistence.
Resolves gitlab-org/gitlab#413000 (closed)
Edited by Niko Belokolodov