Answer
An autonomous-transaction PL/SQL procedure that writes to your own logging table can capture dbms_utility.format_call_stack output independently of the calling transaction — this lets you record call-stack information from contexts (like background jobs) where the standard tracing mechanism doesn't apply, since the write commits on its own regardless of what happens to the surrounding transaction.