Logs is something that can grow very fast and therefore take lots of disk space on web server. There are several log types used by In-Portal. Some are rotated, but some aren't. In particular following logs aren't rotated:
- "Session Log" - past and present user sessions
- "Changes Log" - changes made within each user session
When actively manipulating the data in the database the "Changes Log" in particular can be very large (one record created for every user action).
Solution
- add "
Keep "Session Log" for
" system setting to the "Logs Settings" sub-section in the "Configuration > Website > Advanced" section with following options:- 1 day
- 1 week
- 2 weeks
- 1 month
- 3 months
- 1 year
- 2 years
- 3 years
- 5 years
- Forever (never deleted automatically)
- create "session-log:OnRotate" scheduled task (see "email-log:OnRotate" for example) to cleanup logs
- don't session logs of active sessions
- when before deleting session log delete all change log records associated with that session log
- add protection against removing more than 100 records per run (to avoid "out of memory" error)
- run event once per day