Creating a watchdog log when publishing status changes on my own ContentEntityBase
I would like to go for hooks (maybe events), hook_ENTITY_TYPE_update. You can find more about it in details here.

You only have to check if "status" field is being changed after update, and using the logging factory to put it into logs. This is also "form" independent (means it will run each time when entity gets updated), which is more general approach, and better for your system (more consistency).