User Activity Reporting
Problem to solve
Track the number of users, user's role and time of day they were logged in.
Also would like to have a histogram showing the growth (or acceptance) of GitLab.
Intended users
Key Stakeholders to identify adoption of the tools.
Further details
By tracking the number of users every fifteen (or ‘x’) minutes, the number of active users and time of the day the users are in Gitlab is know. "I can see how many people work early morning or late hours, but also how many are on-prem or off-shore. By plotting the users, I then have a histogram showing the growth (or acceptance) of the tool. This will be a great way to document our migration efforts as well. By tying to a role, it could help me see when developers, maintainers, guests, etc. are using the system. Maybe even have a histogram by role! As the number of users increases, compare to a threshold and send notifications to an administrator. This could x users from the license, or x users from the Maximum Users. This gives me time to react and possibly do a true up. Or freeze access request approvals until we can get more licenses. As the number of licenses is reached, send a daily email as a reminder to true up!"
Proposal
Every fifteen minutes or so, have a script run to execute a command to get the number of licenses available and the number currently being used. These two numbers are saved to a file. Also track which users are logging in and the time of day.
Permissions and Security
Documentation
Testing
What does success look like, and how can we measure that?
Granular reporting available for user to track their adoption and utilization of the tool. Possibly represent data in a histrogram.