We propose a fault isolation scheme based on model checking in order to reason about temporal properties of loosely coupled systems of concurrent processes. To address the problem of state space explosion we advocate an automatic abstraction technique based on a notion of observational equivalence. We statically analyze a system and construct a total function from possible message logs to isolated faults. Thus, fault isolation reduces to table lookup. Tables can be used at design time to find non-diagnosable failures of the system as well as redundant error messages.