logging refactored