Rewriting, easier to use, possibility to force log to be written before turning, throw exception when logging an error