Implemented different types of logging