Why not override the allocator functions and track the memory allocations and deallocations yourself?
You can do pretty much anything at that point (e.g., you can track memory allocations and deallocations at only the specific levels you care about)…