[lttng-dev] [RELEASE] LTTng-UST 2.7.0-rc1
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Wed Jul 15 18:28:51 EDT 2015
LTTng-UST, the Linux Trace Toolkit Next Generation Userspace Tracer, is
port of the low-overhead tracing capabilities of the LTTng kernel tracer
to user-space. The library "liblttng-ust" enables tracing of
applications and libraries.
New and noteworthy:
* tracelog() instrumentation facility. Excerpt from lttng-ust(3):
USAGE WITH TRACELOG
If you want to migrate existing logging (info, errors, ...) to LTTng
UST, you can use the tracelog() interface. To do it, in a nutshell:
1) #include <lttng/tracelog.h>
2) /* in your code, use like a printf, with extra loglevel info. */
tracelog(TRACE_INFO, "Message with integer %d", 1234);
3) Link your program against liblttng-ust.so.
4) Enable UST events when tracing with the following sequence of com‐
mands
from lttng-tools:
lttng create
lttng enable-event -u "lttng_ust_tracelog:*"
lttng start
[... run your program ...]
lttng stop
lttng view
That's it!
You can replace the enable-event line above with a selection of
loglevels, e.g.:
lttng enable-event -u -a --loglevel TRACE_INFO
Which will gather all events from TRACE_INFO and more important
loglevels.
* File-backed UST: allow mapping ring buffer into filesystems. Useful
in combination with pramfs or DAX+pmem (kernels 4.1+ for DAX and
4.2+ for pmem) to keep tracer ring buffers around in persistent
memory upon system reboot.
* getcpu and clock plugin support. Allows user to provide their own
getcpu and clock source implementation as shared objects.
Changelog:
2015-07-15 (Pet Fire Safety Day) lttng-ust 2.7.0-rc1
* Fix: Use $enableval with AC_ARG_ENABLE
* Fix: Cleanup local_apps sock_info in lttng_ust_cleanup
* Fix: handle sys_futex EINTR and EWOULDBLOCK
* Fix: update liburcu URL
* .gitignore: ignore Python agent generated files
* Add ctf_sequence_hex() macro
* Fix: set soinfo_data's vdso flag correctly in base address statedump
* Fix: running java examples out of tree
* Fix: java class check when uudecode is not present
* Cleanup: remove extra whitespace in configure output
* Default to no unaligned access on unsupported archs
* cleanup: Coding style fixes to the Java agent
* cleanup: Mark obsolete JUL agent as @Deprecated
* Fix compilation warnings in the Java agent
* Fix: out of tree build of java agents
* Fix: Use env CLASSPATH when building log4j example
* Fix: build log4j example when enabled
* Bump tracer version to 2.7.0-pre
* Fix: perform volatile load of tracepoint state
* Add demo-tracelog to gitignore file
* Add aarch64 support to configure
* Implement cpu_id context for filtering
* ust cyg-profile: use same class for entry and exit
* Fix: function instrumentation ip context
* Fix: liblttng-ust-dl ip context
* Remove caller field from malloc events
* Fix: pthread wrapper ip context
* Fix: lttng-ust-malloc ip context
* Allow TP_IP_PARAM arg name to be configured
* tracelog: use same class for all loglevels
* fix tracelog namespacing of loglevels
* Add tracelog documentation to lttng-ust(3)
* Implement demo-tracelog example
* Implement tracelog API
* Fix: fetch caller address from tracef()
* Rename helper providers and events for consistency
* Refactor state dump system
* Refactor Python agent
* Fix: building probe providers with C++ compiler
* Fix: use lttng_secure_getenv to handle env. vars. involving paths
* Fix: Don't wait during registration if clock_gettime() fails
* Fix: getcpu/clock plugin handle leak
* Fix: add missing new ldl dependency for liblttng-ust-ctl
* Fix: add missing getenv wrapper
* Fix: add missing lttng-clock.c
* Fix: add missing ust-clock.h
* clock plugin example: use shift and mul
* Implement getcpu override
* Implement clock override plugin support
* Add tracepoint_enabled() macro
* Move file creation/unlink from liblttng-ust-ctl to consumerd
* Implement file-backed ring buffer
* Fix: oot build: missing top_builddir include
* Fix: Mismatching code and console output in log4j example
* Update manpage about LTTNG_UST_DEBUG effect
* Don't output to stderr from lib unless DEBUG is activated
* Remove usterr.h, use usterr-signal-safe.h everywhere instead
* Fix: out-of-tree build: wrong file path for sed input
* Fix: make dist: python agent file handling
* Fix: java-agent: out-of-tree path to java manifest
* Add return address to liblttng-ust-libc-wrapper
* Fix: missing parenthesis in offset_align_floor
* Fix: add ustctl_has_perf_counters
* Fix: add urcu-bp TLS fixup
* Fix: add missing poll.h include
* Fix: get_subbuf: bound number of consumerd retry
* Fix: man: you can't link a lib with a static lib
* Fix: context alignment not properly handled
* Fix: Shorthand option -cp not supported in all version of Java
* Fix: allow tracepoints to build with --std=c99
* Bump UST ABI for new release cycle
* Cleanup: remove "disabled" flag for new release cycle
* Fix: filter attach vs event enable race
* Fix: add a configure check for weak symbols support
* Fix coverity warning about sizeof(void **) != sizeof(void *)
* Fix: off-by-one in sequence filter comparator
* Fix: Java Agent JAR file symlink should be created after objects install
* Fix: Add versioning to liblttng-ust-agent JAR
* Fix: Warn when log4j version is too old
* Update Java agent documentation
* Fix: Try loading classes using the thread context class loader
* Add Python agent support
* Update version name
Project website: http://lttng.org
Documentation: http://lttng.org/docs
Download link: http://lttng.org/download
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list