implemented the logger