Identifying faults in large-scale distributed systems by filteringnoisy error logs