On server side, we log a lot of stuff... almost everything possible information. It is needed for post-mortem or post-bug forensic.
Of course, our mORMot framework logs automatically all SOA calls, and all ORM and/or SQL process.
And it also logs all exceptions.
See https://synopse.info/files/html/Synopse mORMot Framework SAD 1.18.html#TITL_73
This was for low-level text logs.
At higher level, we also log all high-level SOA calls, in form of local Sqlite3 databases.
This is very efficient to make any kind of statistics, via some simple SQL SELECT. https://synopse.info/files/html/Synopse mORMot Framework SAD 1.18.html#TITLE_445