We need to be able to let matomo know if a user is logged in or anonymous.
We have that data in nginx and need to send it to matomo as a custom variable
Description
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Resolved | jsn.sherman | T278747 Set up Matomo to track page views | |||
| Resolved | jsn.sherman | T282245 Add custom variable data to matomo via nginx logs |
Event Timeline
I'm currently playing with setting a has_session token in the nginx json log output to see if that can be picked up as a custom dimension in matomo
Looks like the python scripts uses custom variables instead of custom dimensions.
It's slightly different way to achieve the same thing.
I'm adding the custom variables plugin, which is provided directly from matomo.
Okay, I've got the data structure coming out of nginx looking good, for example here's a snippet of the log output when I'm authenticated:
"args": {"_cvar": {"1": ["has_session", 1]}}vs unauthenticated:
"args": {"_cvar": {"1": ["has_session", 0]}}but it looks like the json format for the log ingest script hardcodes custom variables and doesn't actually parse that bit of the log.
It looks like I just need to add a little code to merge the log argument dictionary with the one hardcoded in the script
This started out as a 4 hour spike, which I've now exceeded. It's pretty clear what I need to do here, so I'll just reuse this as the task for getting custom variable data into matomo.
Okay, I'm in the process of exploring how to connect custom variables (which can be page- or -visit-scoped) to custom visitor segments, which can be used in scheduled reports. This is one of those areas where every piece is configurable and has impact on how things are counted, so I'm plowing through various combinations to see clearly and consicely we can answer the question
What percentage of users who arrive on the homepage (logged out) log in?