@AndrewYardy
Before you rule out the access report completely, be aware that there is information downloaded by Canvas that it does not show on the web. If you look at the JSON that is delivered, it has the first time they accessed the report as well as the last time. That JSON object also contains the full timestamp for the last viewed -- not the unprecise "1 hour ago" or "10 hours ago" that it shows on the web.
You can access the JSON data by appending .json to the end of the URL. That is, instead of the path ending in usage, make it end in usage.json. Depending on your browser, you may need to copy/paste the JSON into a JSON to CSV converter to make it into a table to understand it.
My script puts all that information, including both timestamps, and exports it as a CSV file. You can then set up pivot tables or filter off assignment names.
The two main downsides of the Access Report are that it is only available through Canvas (no API) and that does not give all of the times that someone looked at something (unless that number is 2 or fewer). If someone looks at something 30 times, you still only know the first and last times. Often, knowing the first time is well after when they should have looked at it is enough for what I'm working with.
You can potentially view pages (as an admin), but then you're hunting for a needle in a haystack, especially if it happened a while ago. It can be beneficial, though. I had a student who was logged in multiple places at the same time, submitting work from different IPs (in different countries) within seconds of each other, and turning in work that was like nothing they had done before (and didn't really answer the discussion prompt). The access report doesn't have IP addresses, but that's not always reliable. I have three ISPs at home so that I can get some semblance of high speed internet and my IP could change between requests.
The live events is only good moving forward. You cannot go back and look at things that happened before you set it up. It is also a best-effort. If there is network issues or the Canvas servers are too busy, you may not receive the data.
I originally set it up so I could provide data to my statistics class so they could try and figure out what behaviors are predictive of success in the class. I give them 30+ variables including how many times a student looked at the grades page or used a mobile device. They have 60 minutes to look through the data and prepare a slideshow. The last 10 minutes are the group presentations to the class.
While that was the original intent, I can see how often users are active in the system (more than just logging in). I've used it on the student side and the instructor side.
The live events is kind of like the page view logs except that it can happen in near-real time and you can filter out some junk to only receive what you want to receive. It includes the IP address used in the access. It can really big, though. We're a small school and the AWS costs are typically under $2 a month for the data I gather. It's taking about 4-5 GB for a month's worth of data. February 2024's data was 2.7 million records and 5 GB. That's just mostly access-related events being sent.