separate logger from handler
separate data load from data handle