In terms of recording when people access the platform if you have your log level (in Administration -> Logging ) set to Info you can see in the logs when someone has accessed the platform.
EG:
[t3h80] [2020-06-04 12:52:48.300959] REDACTED_auth.INFO: ilAuthFrontend::handleAuthenticationSuccess:179 logged in as _______, remote:REDACTED, server:REDACTED
You could parse the logfile for that.
You could also have a plugin record the 'afterLogin' event that is thrown when a user is logged in and do a report on that.
As for each time they access a course i'm not 100% sure on that.