metracer — New Release 1.3.3

I’m happy to announce a new 1.3.3 release of metracer. This release brings several small but very useful features and fixes couple of nasty bugs. See below for a discussion of most notable changes.

Full change list as well as binaries are available on release notes page.

 

1 Better user experience: quit via ‘q’ with removal of instrumentation, via ‘Q’ with retention of instrumentation (issue #29)

With this feature one can end active session via a conventional (at least for GNU utilities like less) way – by pressing a ‘q’ or ‘Q’ on keyboard. In first case (‘q’) ordered instrumentation will be removed, in the second one (‘Q’) – instrumentation will be retained. Such UX is very useful when making active experiments with various patterns.

metracer_issue_29_demo_q_

Quitting via ‘q’ – this removes ordered instrumentation

metracer_issue_29_demo_Q

Quitting via ‘Q’ – this retains ordered instrumentation

 

2 Better user experience: one can omit patterns, in this case patterns from previous session will be effective (issue #37)

Connected with previous feature this one allows to save some time – no need to retype a patterns since they can be easily reused.

metracer_issue_37_demo

Omit patterns and they will be reused from previous session

 

3 Printing of timestamp for each trace event (issue #32)

Now each trace event (entry / exit) is reported along with a timestamp. This eases understanding of dynamics of an executed program.

metracer_issue_32_demo

Timestamps allows to understand dynamic of an executed program

 

4 Unfolding of Arrays, Collections and Maps when printing arguments values (issue #33)

Seeing content of common data structures is a key for an effective troubleshooting. Now Arrays, Collections and Maps are unfolded and theirs content is exposed.

metracer_issue_33_demo

Unfolding of Arrays, Collections and Maps

 

5 Ability to show stack trace for each trace event (issue #34)

For each entry event metracer could print a stack trace – this is controlled via ‘-s’ option. This allows to identify execution path and opens a door a vertical instrumentation feature proposed by Mike Oksenenko (issue #27).

metracer_issue_34_demo_

Stack traces for an entry event are ordered via ‘-s’ option

 

6 Reporting of how many methods were instrumented / deinstrumented (issue #38)

Statistics is always useful – number of methods were instrumented / deinstrumented (along with number of changed classes) is now reported by metracer.

metracer_issue_38_demo

Number of instrumented / deinstrumented methods and classes is displayed

 

 

Leave a Reply

Your email address will not be published.