LTTng Toolchain 2.1.0 is out!

Greetings everyone!

Just in time for the end of the world/holidays, the LTTng 2.1 tracer toolchain is finally available!

You will find below the respective new features/changelog for each projects:

LTTng Tools 2.1.0:

New features now:

Network streaming.
Introduce the new lttng-relayd component used to receive the trace on a
remote host. For this, we've added the new lttng enable-consumer command
that allow the user to control the consumer destination of the session
(disk or network). The lttng_set_consumer_url() API call is added with
enable_consumer and disable_consumer as well.

Filtering for UST
A --filter has been added to lttng enable-event command and a new
lttng_enable_event_with_filter() API call.

Data pending
Now, by default, the stop command waits for the data traced to be
written completely on disk or over the network before returning. This
means that right after the command returns, you are assured that the
data is available for any viewer. This can be override by --no-wait or
by using the lttng_stop_session_no_wait. Also we've added the
lttng_data_pending() API call.

Health check
Using lttng_health_check() with the right health component (see
lttng.h), you can now monitor the health of the session daemon for most
of its subsystems. See lttng-health-check(3) for more information.

This version concludes more than a year of development which introduce
very exciting set of features. As usual here is the changelog:

2012-12-20 (13th Baktun) lttng-tools 2.1.0:

  • STABLE VERSION 2.1.0-stable - "Basse Messe"
  • Multiple minor fixes
  • Multiple memory and fd leaks
  • Fix: Off by one in seq num for data pending command
  • Fix: flag metadata stream on quiescent control cmd
  • Fix: prioritize control socket communication in relayd
  • Fix: poll and epoll fd set reallocation
  • Fix: add missing goto pending if data is inflight
  • Fix: remove ua_sess->started assert on stop trace
  • Set classes of traffic in high_throughput_limit
  • Fix: use the poll wait ret value when iterating on fd(s)
  • Fix: force the poll() return value to be nb_fd
  • Fix: Wrong check of node when cleaning up ht
  • Fix: set started flag of ust app after ustctl
  • Fix: memory leak in add relayd socket error path
  • Fix: add packed attribute to filter structure
  • Fix: Add missing health code update for consumer command
  • Add LTTNG_PACKED macro
  • Fix data pending for inflight streaming
  • Map session id of relayd and sessiond in consumer
  • Add the relayd create session command
  • Make the consumer sends a ACK after each command
  • Remove MSG_WAITALL on every recvmsg() socket typ
  • Fix: Add missing relayd ht cleanup and ht destroy
  • Fix: Relayd and sessiond version check
  • Fix: protect consumer_find_channel with rcu locking
  • Fix: don't steal key when adding a metadata stream
  • Consumer hold stream mutex for add stream
  • LTTng UST 2.1.0:
    Highlights of the 2.1 UST release:

    Filtering by event field content is now supported.

    Example:

    lttng enable-event -u 'myevent' --filter 'myfield > 50 && otherfield < 100'

    (see lttng(1) for details)

    Applications built against lttng-ust 2.0 still work with
    lttng-ust 2.1, but it is recommended to rebuild the tracepoint probes
    if you want to be able to use filters on those events.

    It must be used with lttng-tools 2.1, which supports network
    streaming over TCP.

    Detailed Changelog since 2.1.0-rc2:

    2012-12-20 (13th Baktun) lttng-ust 2.1.0:

  • Bump liblttng-ust-ctl lib version major number
  • Bump UST proto version minor number
  • Helper to debug: add object name
  • Tests: Fix rundir not created in ust-basic-tracing
  • ust test: add missing return -1
  • Test: update ust tracing unit tests to 2.1 internal ABI
  • Tests: Fix rundir not created in ust-multi-test
  • Adapt internal files and examples to TRACEPOINT_INCLUDE
  • Adapt tests to TRACEPOINT_INCLUDE
  • Cleanup: tests remove hello.cxx/ust_tests_demo.h
  • Fix: don't do macro expansion in tracepoint file name
  • Fix lttng-gen-tp: Template file must end in .tp
  • Pack structures in comm protocol between UST and sessiond
  • Cleanup lttng-gen-tp: Help not showing when using -h,--help
  • Cleanup lttng-gen-tp: remove leading underscore before include guard
  • fix memleak: ustctl free shadow chan on ustctl_unmap_channel()
  • Update license text
  • Fix: check if event enabled for bytecode-less events
  • Fix: handle enablers without bytecode
  • Print probe provider mismatch error even without -Wsystem-headers
  • filter: Add missing padding
  • LTTng Modules 2.1.0:
    Highlights of the 2.1 lttng-mo