What features should I use? Things like getting the computer name, ip or something
Security audit ?
Yes
You build your own layer, in beforeExecuteRoute
beforeExecuteRoute
Triggered before executing the controller/action method. At this point the dispatcher has been initialized the controller and know if the action exist.
Record everything in a database from there.
This is a suitable way
https://blog.phalcon.io/post/tutorial-creating-a-blameable-behavior-with