Tracking system-generated events
Hello! I run a SaaS web application with several clients, each of which has several users. I have user event tracking down, however I also want to track certain system-generated events.
For example, I have several processes that run on a per-client basis and I'd like to keep track of when those are run so that we can make that information available to the clients.
I also have several emails that are automatically sent by our system which wouldn't make sense to set a user_id on because those users did not initiate the action.
For scenarios like those, how should I proceed? Should I send the events to Segment with an anonymous user_id of "system" or something similar? Or is there another strategy I'm not thinking of?
Segment tracking is intended to be based on tracking user actions. If you want to track system actions, you should treat the 'system' as a user. Using the same userId/anonymousId for your system events will prevent you from incrementing your MTU count every time you make a call to Segment.
I would like to expand on that question with a use case
For example, a user is deleted from the system if they haven't interacted with the app in more than 3 months.
We have a cron job that runs on the backend and delete those users. In that case, we want to send a "Expired account" event, and that should be associated with the user but it wasn't initialized by the user
Would it still make sense to send these events as a system user ?