Wiki Usage Ping for Create SMAU
What does this MR do?
Add usage data, on the granularity of event counts, for the following action:
- A user creates a new wiki page
- A user edits an existing wiki page
These counts are then collected as part of the existing usage data under the following keys:
wiki_pages_created
wiki_pages_edited
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry for user-facing changes, or community contribution. Check the link for other scenarios. -
Documentation created/updated or follow-up review issue created -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Performance and testing
This adds a new redis call on each wiki page edit or creation. Redis is fast, much faster than writing rows to the DB, so the impact will be minimal. Ideally though, this would be best to be asynchronous. https://gitlab.com/gitlab-org/telemetry/issues/61 is all about coming up with a common approach here, and so when that is closed, this mechanism may need to be updated.
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process.
Security
This exposes activity about feature usage to Redis. We already use this for infromation storage, and no personal identifying information is stored (we just maintain a monotonic counter), so this presents no additional security risks.
Related work:
This MR is based on https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/30850 by @fjsanpedro , which should be merged first.