add logger impl