FactoryTalk Diagnostics will do that; it will record user login/logout, display changes, communication errrors/events, tag changes, and some other system events.
Use the Diagnostics viewer on one of your displays to view those at runtime.
You also need to enable all the diagnostic events on the PanelView Plus (see the PVP user manual).
I'm not sure that it will record an alarm acknowledge, but there is a way to get that recorded if you really need it.