Event Logging?


I have been asked if Ignition can be made to log actions taken by operators, e.g. pressed the run button, started a device, acknowledged an alarm.

I don’t see any built-in capability for this, so I assume I would have to put some code into all the relevant object event handlers to capture these events in a database table. Is that correct?

Also, is it possible to have an operator enter a text comment when he acknowledges an alarm?



Yes, You have to do this yourself. I have created a script for all operator controls. The event handler for everyone of these buttons calls the script. The script checks permissions, pops up a confirmation dialog, sends the control, pops up a result dialog, and logs the action.

You could do this yourself. You would have to create your own acknowledge button. When the operator clicks it, a window could pop up with an edit field. When the user closes the window, store the text in a new column in the alert_log table and call system.alert.acknowledgeAlert() to acknowledge the alerts.


The “audit log” feature is intended to do most of what you described. However, going for a more custom approach like Robert described will give you better control over things- and give you a chance to do any more advanced stuff like the permissions checking and confirmation that he mentioned (it’s worth noting that role based permission can be set up on a SQLTag, but for things like acknowledging alarms, you’ll have to set up something custom).