Measuring time spent by student

Hi all,

We need to measure the time that students spend in courses. Currently we are doing something by checking the tracking logs.
I wonder if someone implemented something in this direction. Maybe using google analytics?

1 Like

I was just about to post a question about mysql queries along these lines, so I’ll use your thread first and split into my own thread if you object.

I also want to track student time that they spend in classes, and with all the analytics currently broken + switching over to tutor yielding non-free analytics, I guess I have to make raw mysql queries myself.

So I use “Mark as complete” checkboxes for students to manually track their own progress. I’d like to extract from the database the times when students checked those boxes. I’d then graph that like this:

Then to extract a total time spent (approximation), I’d remove any time difference which is greater than a set amount that the longest section should ever take (e.g. 3 hours.) So from A->B is time 1, B->C is time 2, and then if C->D is like 2 days, I’d just exclude that, and continue on with the D->E time 3 etc. (Obviously this loses data where students didn’t end by checking a box, but oh well, so does auto-time tracking.)

So I know enough SQL to be able to puzzle out how to extract this data IF I can find my way into the db in the first place. So my question is:

  1. How can I get into the mysql db on a tutor-based system?
  2. Can anyone confirm that clicking those “Mark as complete” boxes does actually insert a timestamped event into the database somewhere?
1 Like

Well, at least for question 1, the answer is:
docker exec -it tutor_local_mysql_1 mysql -u root --password=FOO
where the mysql password is printed out by a “tutor local quickstart”

I think “Mark as completed” is an Xblock and thus the value should be stored somewhere in mongodb.
I am not 100%, but I really really doubt it that any xblock type of storage would be stored in mysql.

1 Like

It is indeed an xblock. I guess I’ll have to go learn a bit of mongodb then. Thanks for the tip.