WCF, EHAP and Inner Exceptions

Each layer in the app uses an EHAP policy to Wrap the exception into a new more generic exception for that layer, ie. BusinessLayerException or DataAccessLayerException.

So, if an invalid argument exception is thrown in the DataAccessLayer, it would be wrapped inside a DataAccessLayerException object.

When it propagates through the WCF service, the client receives one of 2 things:

If includeExceptionDetailInFaults=true
System.ServiceModel.FaultException`1[[System.ServiceModel.ExceptionDetail

or, if includeExceptionDetailInFaults=false, it uses my FaultContract and returns a custom ServiceFault object, as defined by me and populated by EHAP FaultContractExceptionHandler for Exception shielding.

In either case, the Message comes from the parent (outer most) exception object.

What is the best way to enable a DEBUG flag that would also include the InnerException chain returned to the client? In either case above, the InnerException chain is never included, so the true error (InvalidArgumentException) would always be hidden.