Abstract log parsing into LogSource