add basic logging implementation