Libinstrument is a complete and easy way to do custom function instrumentation for C/C++. The project comes ready with classic applications of instrumentation, such as AOP (Aspect Oriented Programming), Concern and Side Effect injection, stack tracing, exception tracing, basic time profiling, callgraph profiling and other. A GC (Garbage Collector) module is also under development.

Libinstrument is highly portable and decoupled. The project comes with a CMake build system, integration with IDEs (CLion, Eclipse e.t.c) is straightforward. Using lazy algorithms there is virtually zero overhead in benchmarks and minimum overhead in execution time. Libinstrument tries to be as non-intrusive as possible, while trying to help the developer offering basic reflection.

There are Unit Tests for each class and method, testing is driven with CTest.

Features

  • Minimal code interface, transparent library integration, low overheads
  • Easy library code and runtime configuration
  • Rich tool sets, fully tested/testable and fully docomented
  • Rich reflection API for symbols and symbol tables, runtime address to full function signature matching, thread/process execution e.t.c
  • Easy library input/streaming/output of generic, AOP or trace data
  • Stack trace (and generic) syntax highlighters

Project Samples

Project Activity

See All Activity >

License

Apache License V2.0

Follow libinstrument (ex libcsdbg)

libinstrument (ex libcsdbg) Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free

Additional Project Details

Operating Systems

BSD, Linux, MinGW/MSYS2, uClinux

Languages

English

Intended Audience

Advanced End Users, Architects, Developers, Education, Testers

User Interface

Console/Terminal, Java Swing, Plugins

Programming Language

C, C++, Java, Unix Shell

Related Categories

Unix Shell Debuggers, Unix Shell Profiling Software, Unix Shell Agile Development Tools, Unix Shell VMware Software, C++ Debuggers, C++ Profiling Software, C++ Agile Development Tools, C++ VMware Software, C Debuggers, C Profiling Software, C Agile Development Tools, C VMware Software, Java Debuggers, Java Profiling Software, Java Agile Development Tools, Java VMware Software

Registered

2012-07-21