Code refractor and logging improvements