improve logging and change signature