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
Enterprise-grade ITSM, for every business Icon
Enterprise-grade ITSM, for every business

Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity.

Freshservice is an intuitive, AI-powered platform that helps IT, operations, and business teams deliver exceptional service without the usual complexity. Automate repetitive tasks, resolve issues faster, and provide seamless support across the organization. From managing incidents and assets to driving smarter decisions, Freshservice makes it easy to stay efficient and scale with confidence.
Try it 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