In this paper we present a generic, mirror-based debugging architecture that supports runtime visibility and traceability of aspect oriented (AO) software systems. Runtime visibility supports inspection of an executing m in terms of AO programming abstractions and code artifacts such as (dynamic) aspects, advices, pointcuts, aspect instances and advice applications. Runtime traceability supports inspection of the stack to identify advices that could have been executed, that are being executed, or that may be executed later. Additionally, traceability supports identification and inspection of the pointcut that causes a specific advice. We have created a mirror based architecture that offers introspection support including an aspect-aware breakpoint model for AOP-related runtime events. We introduce the concept of hook frames to trace joinpoints and their advices on the stack. We validate the genericity of our architecture in two instantiations