log generator common implementation