One of our servers autoremoved Nagios while doing a monthly cleanup. History file shows it listed for removal.
Is it possible to determine why it was marked for removal?
There is no log detailing apt's logic. But the logic is so simple that a log isn't needed. There are only two criteria to make a package eligible for autoremoval.
1) It's apt-marked 'auto'
2) No installed package that is apt-marked 'manual' needs it as a dependency.
If you want to keep a specific package, then change #1 using the apt-mark
command. You don't need to mark every dependency - those will be kept by #2.
Example: sudo apt-mark manual name_of_my_package