David Goulet [Mon, 22 Sep 2014 15:05:06 +0000 (11:05 -0400)]
Fix: memory leak in load session thread
Fixes Coverity issue
1213789.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 22 Sep 2014 15:03:24 +0000 (11:03 -0400)]
Fix: kernel context memory leak on error
Fixes Coverity issue
1223776.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 22 Sep 2014 14:55:52 +0000 (10:55 -0400)]
Fix: possible file descriptor leak in error path
Fixes Coverity issue
1225086.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 22 Sep 2014 14:50:42 +0000 (10:50 -0400)]
Fix: use after free in agent subsystem
Fixes Coverity issue
1230592.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 19 Sep 2014 17:58:31 +0000 (13:58 -0400)]
Add version to agent registration message
Signed-off-by: David Goulet <dgoulet@efficios.com>
Philippe Proulx [Mon, 15 Sep 2014 17:43:56 +0000 (13:43 -0400)]
Fix: ignore error when loading optional kmod
This commit also improves the accuracy of debug messages: a module is
not "successfully" loaded when it's optional and actually not loaded.
Fixes: #837
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Philippe Proulx [Sat, 13 Sep 2014 01:37:18 +0000 (21:37 -0400)]
sessiond: Add --extra-kmod-probes option
This patch adds the --extra-kmod-probes option to lttng-sessiond. The
LTTNG_EXTRA_KMOD_PROBES environment variable may also be used.
The option specifies a list of extra probe kernel modules to be loaded
(and unloaded) by lttng-sessiond. The list is appended to either the
default list or to the user-supplied --kmod-probes list.
This option is especially useful for kernel developers who need the
default LTTng kernel probes plus additional probes in order to
instrument their custom kernel or module. This becomes easy with
--extra-kmod-probes:
lttng-sessiond --extra-kmod-probes=custom_subsys,other
would load all known and available LTTng kernel probes plus
lttng_probe_custom_subsys and lttng_probe_other.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 18 Sep 2014 19:38:18 +0000 (15:38 -0400)]
Fix: remove break in lttng cmdline session listing
This was causing to only list the first session with a "lttng list"
command.
Reported-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 15 Sep 2014 19:20:51 +0000 (15:20 -0400)]
Fix: use default agent channel name in disable event
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Thu, 11 Sep 2014 18:26:10 +0000 (14:26 -0400)]
Remove enable/disable consumer obsolete command
They've been obsolete for quite some time now so just remove any
reference and file to get rid of it.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 9 Sep 2014 15:22:50 +0000 (11:22 -0400)]
Add log4j default event and channel name handling
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 10 Sep 2014 20:38:04 +0000 (16:38 -0400)]
Fix: remove an odd no name directory from the test tree
Reported-by: Daniel Thibault <Daniel.Thibault@drdc-rddc.gc.ca>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 10 Sep 2014 16:16:48 +0000 (12:16 -0400)]
Fix: move easter egg after arg parsing else it breaks the mi test
Signed-off-by: David Goulet <dgoulet@efficios.com>
Umut Tezduyar Lindskog [Thu, 4 Sep 2014 08:30:53 +0000 (10:30 +0200)]
Load modules through kmod
Instead of forking processes, load modules through libkmod.
This adds an optional package dependency to kmod but can be disabled by
--disable-kmod option in ./configure. If --enable-kmod option is given
but no kmod is found, loading will happen by forking a process.
The startup time has decreased by %36 on our embedded mips product. The
measurement is done by cgroup cpu shares.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 8 Sep 2014 18:50:06 +0000 (14:50 -0400)]
Add cscope files to gitignore
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 5 Sep 2014 19:29:23 +0000 (15:29 -0400)]
Fix: list agent event per domain only
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 5 Sep 2014 19:24:58 +0000 (15:24 -0400)]
Fix: typo in lttng list command for log4j
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 5 Sep 2014 16:16:18 +0000 (12:16 -0400)]
Test: add disable-event JUL tests
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 5 Sep 2014 16:13:55 +0000 (12:13 -0400)]
Fix: disable-event for an agent domain
This fixes the disable-event command for an agent that was not working
properly in the case an application was spawned after the command.
Also, for the disable all event command for an agent, the disable
command will try first to disable the '*' event and will disable all
already existing events after. This is to make sure the refcount on the
agent side is synchronized with the amount of enable event prior.
Fixes #831
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Fri, 5 Sep 2014 16:12:38 +0000 (12:12 -0400)]
Fix: send disable ALL command code if event is *
$ lttng disable-event -a
and
$ lttng disable-event '*'
Both commands should do the same meaning send the DISABLE_EVENT_ALL
command to the session daemon.
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Wed, 27 Aug 2014 17:59:21 +0000 (13:59 -0400)]
Fix: make sure no index is in flight before using inactivity beacons
Since the index is sent in two parts on two separate connections from
the consumer, there can be cases where we receive an inactivity beacon
between the index creation and the data reception.
This fix prevents from using the inactivity beacon if we know a data
index is coming.
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Thu, 28 Aug 2014 16:53:44 +0000 (12:53 -0400)]
Tests: Validate that filters may be used with JUL's logger_name filtering
This test validates that custom filters may be used on JUL events
without interfering with the implicit filtering done on the logger_name
field.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Thu, 28 Aug 2014 16:53:43 +0000 (12:53 -0400)]
Fix: Parenthesize previous statement when adding conditions to a filter
Not parenthesizing the clauses in a filter string causes JUL events to be
traced even though they are not enabled when an enable-event command is
issued with a filter and the --loglevel-only option.
For instance,
lttng enable-event -j "my_event" --loglevel-only JUL_CONFIG -f "int_loglevel > 0 || int_loglevel < 0"
results in the following filter being applied:
int_loglevel > 0 || int_loglevel < 0 && logger_name == "my_event" && int_loglevel == 700
The resulting expression will always evaluate to true, regardless of the logger
name.
This fix parenthesizes each clause to ensure they are all independently
evaluated and not unintuitively affected by operator precedence.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Thu, 28 Aug 2014 20:51:09 +0000 (16:51 -0400)]
Fix: mi print of probe attributes + validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Wed, 27 Aug 2014 19:46:57 +0000 (15:46 -0400)]
Fix: parse_prob_opts return the actual success of the function
This bug have been triggered by the mi merging and the use of a
command_ret in enable_events functions. Previously, enable_events was
reusing the ret variable for another operation and always replacing ret.
Parse_probe_event returned the last output of sscanf which represent
the number of match and not the success of the operation.
Fixes #830
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Fri, 22 Aug 2014 20:25:47 +0000 (16:25 -0400)]
Fix: list without a name is not an error
Fixes #829
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 3 Sep 2014 18:21:41 +0000 (14:21 -0400)]
Test: add match only event utils function
This is linked to #831 where the JUL disable event test was NOT failing
but was using a bogus trace match function. It should have match a
specific number of event only.
This commit makes the test java JUL fail.
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Thu, 14 Aug 2014 20:17:22 +0000 (16:17 -0400)]
Fix: Man page typos
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Wed, 13 Aug 2014 20:58:29 +0000 (16:58 -0400)]
fix: mi: xsd: wrong comment for context_type_type
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Wed, 6 Aug 2014 14:13:48 +0000 (10:13 -0400)]
Mi & save/load: add option to indent or not on config writer creation
The presence of tabulation and newline in mi is irrelevant and can
impact client performance. The parsing & processing of a lot of data
from mi with many /t and /n impact performance. This aim to fix the
problem at the source. Style is useless for machine.
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 12 Aug 2014 15:41:36 +0000 (11:41 -0400)]
Fix: remove racy wait_app from JUL tests
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 4 Aug 2014 19:08:38 +0000 (15:08 -0400)]
Adding log4j agent support
This adds the log4j domain to the public ABI and "-l, --log4j" option in
the lttng command line tool to be able to use it.
Note that at this commit, the JUL default channel and event name are
used for the log4j domain. That might become specific to the domain in
the long run.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 30 Jul 2014 18:12:09 +0000 (14:12 -0400)]
Change --jul-port-tcp and jul.port to use agent namespace
They are both renamed to --agent-port-tcp and "agent.port" file.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 30 Jul 2014 18:03:26 +0000 (14:03 -0400)]
Add the support for multiple agent
For this, a new field has been added to the register message, the domain
type. Agent object and agent application object have now a domain type
so we can enable/disable the right event for the right agent for a
client command or during an application registration.
The "jevent" name has been renamed to "aevent" so further remove the
concept of Java event.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 28 Jul 2014 20:06:35 +0000 (16:06 -0400)]
Refactor JUL to agent namespace
The specific JUL concept has been removed and it is now "agent" objects.
This is the first step to support multiple agents within the same
subsystem.
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Mon, 4 Aug 2014 18:10:28 +0000 (14:10 -0400)]
Test: Ensure wildcards may only appear last in a string literal
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Mon, 4 Aug 2014 18:10:29 +0000 (14:10 -0400)]
Disallow wildcards in event names except as the last character
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Mon, 4 Aug 2014 18:10:27 +0000 (14:10 -0400)]
Warn that wildcards must be used as the last character in a string
Wildcards are currently only supported as the last character in a string
literal used in an event filter. This rule is not checked which may
confuse users who expect complete wildcard support in filter
expressions.
An error is now reported and the filter string is treated as invalid.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 29 Jul 2014 18:11:48 +0000 (14:11 -0400)]
Fix: disable JUL event on destroy
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Tue, 29 Jul 2014 22:36:51 +0000 (18:36 -0400)]
Fix: git version build system integration (v2)
Fix:
- Don't overwrite version.h if the previous content matches.
- While we are there, if we notice the previous content matches,
print a (cached) message to show that we do not overwrite the
content.
- Introduce LTTNG_TOOLS_BUILD_GIT_SOURCE automake conditional rather
than compile-time define to disable the feature. It ensures we
do not invoke "git describe" when configure --disable-git-version
has been requested.
- Use git describe rather than git describe --long --all. Based
on the last tag, and adds the first numbers of git revision.
Last tag is useful both to the developer and in a bug report,
whereas the branch name returned by --long --all is meaningless
in a bug report.
- We want to ship version.h.tmpl in the tarball (make dist), not
version.h which is generated. Someone could very well do a
git init on the extracted tarball and want to have git tracking
support.
- Fix the git prefix " - " that is incorrectly printed in some
situations, e.g. when GIT_SOURCE was active, but we are in
a non-git tree (or git is not available).
- Fix incorrect handling of out of tree build. Invoke git describe from
top_srcdir.
Changelog since v1:
- Add missing comma for lttng usage output.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Tue, 29 Jul 2014 22:10:27 +0000 (18:10 -0400)]
Fix: out of tree build by adding missing ini.c include
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Tue, 29 Jul 2014 19:24:16 +0000 (15:24 -0400)]
Fix: mi: missing files on make dist
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Tue, 29 Jul 2014 14:25:52 +0000 (10:25 -0400)]
mi: add machine interface description to man page
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 29 Jul 2014 15:38:44 +0000 (11:38 -0400)]
Fix: always use git describe --all --long for the git version
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 29 Jul 2014 15:28:51 +0000 (11:28 -0400)]
Add --disable-git-version to configure
By default, GIT_SOURCE variable is defined to 1. The disable option
makes the configure to NOT define it.
This way, anyone not wanting the git version like for instance packager
building from the git repository, it can be used to remove it.
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Mon, 28 Jul 2014 19:43:29 +0000 (15:43 -0400)]
Always print GIT_VERSION even if empty
Adjustment from last proposed patch. Less crowded and more standard.
This should not break any packaging.
feedback?
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Mon, 28 Jul 2014 19:50:28 +0000 (15:50 -0400)]
Fix: mi: logically dead code, missing ret assignment
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Simon Marchi [Sat, 26 Jul 2014 05:26:56 +0000 (01:26 -0400)]
Change wfq usages for wfcq
This removes the deprecated warnings when building lttng-tools. We can
now build with -Werror, woohoo!
This makes lttng-tools depends on userspace-rcu version 0.8.0 and above.
The configure.ac and README files have been updated for this.
Verified by running make check.
Signed-off-by: David Goulet <dgoulet@efficios.com>
Mathieu Desnoyers [Mon, 28 Jul 2014 00:38:50 +0000 (20:38 -0400)]
Fix: unbalanced ustconsumer32_data.pid_mutex lock
It is never locked in this function, but should be. This is triggering
spurious runtime failures on my system, where it seems that sessiond was
sometimes breaking the communication pipe with liblttng-ctl when the
unbalanced unlock is reached.
This should be backported to stable-2.4 and stable-2.5.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Mon, 28 Jul 2014 14:56:05 +0000 (10:56 -0400)]
Mi test: make sure to not auto load session when using lttng-sessiond
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
David Goulet [Mon, 28 Jul 2014 14:39:26 +0000 (10:39 -0400)]
Fix: comment syntax and indentation
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jonathan Rajotte Julien [Fri, 25 Jul 2014 14:03:28 +0000 (10:03 -0400)]
Fix: remove duplicate elements definition in mi_lttng.xsd
The presence of a *duplicate* elements can lead to ambiguity when
validating when using java validator. This is a mostly rebasing error.
Jonathan Rajotte Julien [Wed, 23 Jul 2014 18:12:14 +0000 (14:12 -0400)]
Mi: fix: use GIT_VERSION inplace of FULL_NAME
Jonathan Rajotte Julien [Wed, 23 Jul 2014 15:33:04 +0000 (11:33 -0400)]
Fix: Mi: use sub field of version struct for version string
Jonathan Rajotte Julien [Tue, 22 Jul 2014 19:31:42 +0000 (15:31 -0400)]
Add test utilities to gitignore
Jonathan Rajotte Julien [Thu, 3 Jul 2014 18:08:43 +0000 (14:08 -0400)]
Test: Mi test suite
Test case:
enable ust event
disable ust event
list channel
list domain
list session
list ust event
start command
stop command
snapshot command
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 2 Jul 2014 21:08:19 +0000 (17:08 -0400)]
Fix test: use local prefix for function scoped variable
This prevent unexpected behaviour when the caller function have similar
variable.
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 2 Jul 2014 14:12:02 +0000 (10:12 -0400)]
Mi test: Refactoring and multiple test suites
Test for: destroy command
basic list command
enable_channel
disable_channel
Jonathan Rajotte Julien [Tue, 1 Jul 2014 22:17:35 +0000 (18:17 -0400)]
Fix test: add custom output redirector to utils.sh
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 17 Jul 2014 18:34:08 +0000 (14:34 -0400)]
Mi test: Basic test structure
Added two utils: an xml xpath extractor and xml xsd validator.
Test for session command
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Tue, 22 Jul 2014 14:48:03 +0000 (10:48 -0400)]
Fix mi: validation for snapshot element
Jonathan Rajotte Julien [Mon, 21 Jul 2014 18:19:41 +0000 (14:19 -0400)]
Mi fix: conserve original error handling behaviour
Make sure success is put to zero when an error happens
Jonathan Rajotte Julien [Thu, 17 Jul 2014 18:13:20 +0000 (14:13 -0400)]
Improve bash completion with the use of mi and xmllint
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 3 Jul 2014 13:57:11 +0000 (09:57 -0400)]
Fix mi: use of wrong variable for error propagation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 2 Jul 2014 19:25:33 +0000 (15:25 -0400)]
Mi fix: refactor disable_channel mi output to success element
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 25 Jun 2014 17:52:00 +0000 (13:52 -0400)]
Comment mi: update mi_lttng_domain todo
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 25 Jun 2014 17:34:12 +0000 (13:34 -0400)]
Fix mi: add support for Jul loglevel
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 19 Jun 2014 21:08:29 +0000 (17:08 -0400)]
Mi fix: basic formatting
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 12 Jun 2014 19:51:13 +0000 (15:51 -0400)]
Mi disable-channel command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Tue, 3 Jun 2014 13:56:53 +0000 (09:56 -0400)]
Mi disable-event command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 21:26:15 +0000 (17:26 -0400)]
Mi set-session command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 21:12:41 +0000 (17:12 -0400)]
Mi enable-event command: support for enable-event command
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 19:49:15 +0000 (15:49 -0400)]
Mi enable-channel command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 19:22:11 +0000 (15:22 -0400)]
Mi add-context command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 18:28:04 +0000 (14:28 -0400)]
Mi calibrate command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 15:50:19 +0000 (11:50 -0400)]
Mi destroy command: support and validation
Function destroy_session now take a session as argument. It simplifies the mi
support and give further information on the destroyed session.
Regular output is not affected but the refactoring. We could add the
supplementary information for regular printing if wanted.
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Wed, 18 Jun 2014 14:44:16 +0000 (10:44 -0400)]
Mi create command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 5 Jun 2014 19:50:40 +0000 (15:50 -0400)]
Mi stop command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 5 Jun 2014 14:27:41 +0000 (10:27 -0400)]
Mi start command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Tue, 17 Jun 2014 17:00:38 +0000 (13:00 -0400)]
Mi save&load command: support and validation
Signed-off-by: Jonathan Rajotte Julien <jonathan.r.julien@gmail.com>
Jonathan Rajotte Julien [Thu, 15 May 2014 16:10:17 +0000 (12:10 -0400)]
Mi version command: add commit version to mi version
Jonathan Rajotte [Wed, 16 Apr 2014 21:14:08 +0000 (17:14 -0400)]
Mi: mi xsd validation
Command list and version supported
Jonathan Rajotte [Wed, 16 Apr 2014 21:03:31 +0000 (17:03 -0400)]
Mi: support for command list
Signed-off-by: Jonathan Rajotte <jonathan.r.julien@gmail.com>
Jonathan Rajotte [Wed, 16 Apr 2014 20:08:38 +0000 (16:08 -0400)]
Mi: add mi support for lttng struct
Add mi-lttng support to the following struct:
lttng_domain
lttng_channel
lttng_channel_attr
lttng_event
+multiple mi utility format:
common attribute
tracepoint_loglevel
tracepoint_no_loglevel
function probe
function entry
lttng_event_field
mi-lttng other element
pid element
Rebase on master:
Fix: remove extra linking due to add of mi-lttng to libcommon
Jonathan Rajotte [Sun, 6 Apr 2014 19:30:32 +0000 (15:30 -0400)]
Mi: mi backend + mi for command version
The machine interface option is now available for version. Other
commands will shortly follow. Mi backend is expected to grow with
addition of mi support to other commands.
How to use:
lttng --mi <mi_output_type> <command>
This syntax will be the same for all commands. Currently *only xml is
supported as machine interface output.*
As for errors handling, if an error/warning occurs while using mi it
will be reported on stderr as normal. The integrity of the mi output
cannot be guaranteed if an error/warning occurs. The error output format
is consistent and easy for a machine client to parse. Thus no mi output
format is required for error output.
Example:
lttng --mi xml version
Output:
<?xml version="1.0" encoding="UTF-8"?>
<command>
<name>version</name>
<output>
<string>2.4.0-rc2</string>
<major>2</major>
<minor>4</minor>
<patchLevel>0</patchLevel>
<name>Époque Opaque</name>
<description>The Époque Opaque is a black IPA from Trou du Diable
brewery. The nose is eerily reminiscent of the coffee crisp candy from
of our childhood. These strong mocha accents are present on the palate,
which are quickly subdued by Japanese and Australian hops leading to a
final state of satisfaction enjoyable for any fan of bitter
beer.</description>
<url>http://lttng.org</url>
<license>lttng is free software and under the GPL license and part
LGPL</license>
</output>
</command>
Signed-off-by: Olivier Cotte <olivier.cotte@polymtl.ca>
Signed-off-by: Jonathan Rajotte <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 16 Jul 2014 20:23:52 +0000 (16:23 -0400)]
Update ChangeLog with 2.4.2 and 2.5.0 release
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 16 Jul 2014 19:50:31 +0000 (15:50 -0400)]
Fix: validate file path creds in autoload mode
Validate the credentials only when in auto load mode for the auto/
directory. The lttng load command now checks the session file creds and
validate if it's readable before trying to do so.
Thus with this, a user can load a session from the system wide directory
as long as she/he has the rights to read it.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 16 Jul 2014 18:02:56 +0000 (14:02 -0400)]
Fix: change session file loading order
Libconfig now tries to load a session file from the user directory
followed by the system wide. A user session file should always
supersedes the system wide.
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 16 Jul 2014 17:06:17 +0000 (13:06 -0400)]
Fix: add Loading Sessions section to lttng-sessiond.8
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Wed, 16 Jul 2014 16:52:08 +0000 (12:52 -0400)]
Fix: add default session conf. dir to manpage
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 15 Jul 2014 18:28:38 +0000 (14:28 -0400)]
Fix: on session load, add it to the .lttngrc
Fixes #818
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 15 Jul 2014 18:21:56 +0000 (14:21 -0400)]
Fix: clarify session conf. directory in man
Fixes #817
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Tue, 15 Jul 2014 13:16:54 +0000 (09:16 -0400)]
Fix: filter error path could free invalid ptr
Also add a check for a NULL pointer when freeing the filter bytecode so
we don't deref an invalid ptr.
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Mon, 14 Jul 2014 18:57:10 +0000 (14:57 -0400)]
Fix: Create a lock file to prevent multiple session daemons
A lock file is used to ensure that only one session daemon per UID is
running on the system. The lock file is created in the rundir.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 14 Jul 2014 20:37:05 +0000 (16:37 -0400)]
Fix: relayd stream set close_flag on stream close
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 14 Jul 2014 19:49:02 +0000 (15:49 -0400)]
Fix: ustctl_get_stream_id without UST support
Signed-off-by: David Goulet <dgoulet@efficios.com>
David Goulet [Mon, 14 Jul 2014 18:32:10 +0000 (14:32 -0400)]
Fix: avoid freeing invalid ptr in filter bytecode
Reported-by: Jonathan Rajotte <jonathan.r.julien@gmail.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Julien Desfossez [Mon, 14 Jul 2014 18:05:48 +0000 (14:05 -0400)]
Fix: get the stream_id when generating live beacons
When we send an empty index (beacon), we need to extract the stream_id
to avoid stalling the client on inactive streams on startup.
Since the live clients need to know this feature is implemented, we had
to bump the lttng-live protocol version.
This fix should be backported to stable-2.4 as well.
Refs: #811
Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
David Goulet [Wed, 9 Jul 2014 19:24:04 +0000 (15:24 -0400)]
Fix: use biggest subbuffer size for snapshot max-size
Instead of using the output max size divided by the total amount of
streams in the session, we find the largest subbuffer in the session's
channels. Using that value, we multiply it by the total amount of
streams which gives us the lower limit of the snapshot size. That is
enough to make sure that we can take the snapshot or not.
Once done, the max stream size possible used for the snapshot record is
the largest subbuffer size in the session. This is to make sure that
every channel can extract the same amount of data which ensure fairness
between each channel in the session.
Fixes #783
Acked-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
Jérémie Galarneau [Fri, 11 Jul 2014 19:22:18 +0000 (15:22 -0400)]
Fix: Possible memory leak when multiple config files are loaded
Some configuration options could leak when initialized multiple times
from different configuration files and from the command line arguments.
The previous options are now freed' before being set.
Fixes #796
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
This page took 0.04445 seconds and 4 git commands to generate.