The Instructure Community will enter a read-only state on November 22, 2025 as we prepare to migrate to our new Community platform in early December. Read our blog post for more info about this change.
Does anyone know how to report on the User Agent strings from students accessing courses please?
I'm trying to build a view of which browser/app, devices, and resolutions are being used.
Solved! Go to Solution.
Browser, app, and device are doable. I haven't seen anything that supplies resolution except from the device. I've used the information from the Browser Capabilities Project to give me the data I need.
Canvas Data has access to all of the page requests and it includes the user agent as a field. There is another field that contains a user_agent_id that claims to be unsupported, but I use it to recreate my own user_agent_tables since they don't come with Canvas Data. I then join it to the requests table, or extract the relevant information from the requests table, and then do the join. Working with the entire requests table slows things way down, especially for a non-indexed field.
Browser, app, and device are doable. I haven't seen anything that supplies resolution except from the device. I've used the information from the Browser Capabilities Project to give me the data I need.
Canvas Data has access to all of the page requests and it includes the user agent as a field. There is another field that contains a user_agent_id that claims to be unsupported, but I use it to recreate my own user_agent_tables since they don't come with Canvas Data. I then join it to the requests table, or extract the relevant information from the requests table, and then do the join. Working with the entire requests table slows things way down, especially for a non-indexed field.
Someone reached out to me privately based on this thread and it reminded me to update it with information I have since learned.
Chromium (used for Chrome, Edge, and others) is in the process of reducing the amount of information shared via the user-agent. This is for privacy purposes, which is theoretically good, but comes with some downsides for troubleshooting and detecting suspicious behavior.
There are seven phases, starting in July 2021, and the reduction rollout begins phase 3 with Chrome 100 (we're at Chrome 99 as I write this in March 2022).
Community helpTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.