Track usage activity of Phase 1

Context

From #467292 (comment 2030020541):

There will be instrumentation here to track if customers are engaging in the creation of the allowlist, actively adding/rejecting entries, and how many projects we ultimately had to automate.

Problem

We want to be able to observe user adoption of the CI job token scope allowlist after changes to the Phase 1. We expect that the authentication log would help project owners fill in the allowlist of each project.

Proposal

We want to track user activity with the allowlist and authentications log:

  1. Number of authentication entries being Dismissed/rejected. - currently descoped
  2. Number of authentication entries being accepted. - currently descoped
  3. Job token scope is explicitly enabled by the user. - helps us understand user activity after the authorizations log.
  4. Job token scope is explicitly disabled by the user. - helps us understand how many projects disable the scope (e.g. new projects)
  5. Number of projects with job token scope enabled. - count over time from the database
    • breakdown by "empty allowlist" (same project authentications or no CI_JOB_TOKEN usage) vs "filled allowlist" (cross-project authentications).
  6. Number of projects with job token scope disabled. - count over time from the database
  7. Number of changes made to a project's allowlist.
  8. Unique number of projects receiving authentications while having disabled scope and distinguish between same-project vs cross-project authentications - helps distinguish how many projects use CI_JOB_TOKEN but there is no need to populate the allowlist (same project) vs the cross-project where we need to populate the allowlist. The first numbers will also help calculate the number of projects not impacted at all (inactive or without inbound CI_JOB_TOKEN)
Edited by Fabio Pitino - PTO until Jan 1