This project allows you to log all the allocations to stderr, stdout or a file.
To use it, register the global allocator and activate it:
```rust
extern crate tracing_allocator;
use std::fs::File;
static GLOBAL: tracingallocator::Allocator = tracingallocator::Allocator{};
fn main() { tracingallocator::Allocator::writetostderr(); tracingallocator::Allocator::activate();
let s = String::from("Hello world!");
let mut v = Vec::new(); v.push(1); ```
The following will be printed:
rust
00029801ACDA259B A 00007FB780500000 000000000000000C
00029801ACDB7EFB A 00007FB780500010 0000000000000010
00029801ACDBAAC1 D 00007FB780500010 0000000000000010
00029801ACDBCD09 D 00007FB780500000 000000000000000C
Columns:
A
for allocation, D
for deallocationYou can use the activate
and deactivate
methods to start
and stop collection at any time.
This repository is based on tracing_allocator. It was forked because of breaking changes in Rust internals and lack of communication from the original author.