observer+logging
all