generic log parser