add logger function