[lttng-dev] infinite loop invoked using lttng enable/disable-event
Hi, I'm using lttng 2.2.0 and encountered an infinite loop: - root@ubuntu:~# lttng create Session auto-20130624-165047 created. Traces will be written in /home/avig/lttng-traces/auto-20130624-165047 root@ubuntu:~# lttng enable-event -a -u --loglevel TRACE_ALERT All UST events are enabled in channel channel0 for loglevel TRACE_ALERT root@ubuntu:~# lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT root@ubuntu:~# lttng disable-event -a -u All UST events are disabled in channel channel0 root@ubuntu:~# lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT root@ubuntu:~# lttng disable-event -a -u (infinite loop here...) - I guess it's probably due to the setting of loglevel through enable-event twice..? Avi ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] Working with lttng enable-channel
-Message d'origine- Message: 7 Date: Mon, 24 Jun 2013 17:28:26 +0300 From: Avi Goren a...@reduxio.com I'm using lttng-ust and in the process of the attempt to gain some flush frequency control I encountered a problem. I'm having difficulties with the use of enable-channel. it doesn't seem to apply property changes. here's an example: - # lttng create ses Session ses created. Traces will be written in /home/avig/lttng-traces/ses-20130624-163340 # lttng enable-event -a -u -s ses -c ch All UST events are enabled in channel ch # lttng disable-channel ch -u -s ses UST channel ch disabled for session ses # lttng enable-channel ch -u --subbuf-size 1024 --num-subbuf 1 UST channel ch enabled for session ses # lttng list ses -c ch Tracing session ses: [inactive] Trace path: /home/avig/lttng-traces/ses-20130624-163340 === Domain: UST global === Buffer type: per PID - ch: [enabled] Attributes: write mode: discard subbufers size: 4096 bytes number of subbufers: 4 switch timer interval: 0 usec read timer interval: 0 usec output: mmap() Events: * (type: tracepoint) [enabled] # lttng version lttng version 2.2.0-rc2 - Cuda ... - Am I doing something wrong? Is there a way to control flushing policy besides the use of enable-channel? Thanks, Avi -Fin du message d'origine- From my dabbling with the buffers-pid and buffers-uid options, I strongly suspect you need to enable the channel with its subbuf-size and num-subbuf options *before* using enable-event, otherwise enable-event creates the channel with a default configuration as a side effect. Daniel U. Thibault Protection des systèmes et contremesures (PSC) | Systems Protection Countermeasures (SPC) Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS) R D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence RD Canada - Valcartier (DRDC Valcartier) 2459 route de la Bravoure Québec QC G3J 1X5 CANADA Vox : (418) 844-4000 x4245 Fax : (418) 844-4538 NAC : 918V QSDJ http://www.travelgis.com/map.asp?addr=918V%20QSDJ Gouvernement du Canada | Government of Canada http://www.valcartier.drdc-rddc.gc.ca/ ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] infinite loop invoked using lttng enable/disable-event
Hmmm Can you report that on bugs.lttng.org with the session daemon logs (-vvv --verbose-consumer) ? If indeed the session daemon is stuck or even lttng, it's a pretty serious issue. Thanks! David Avi Goren: Hi, I'm using lttng 2.2.0 and encountered an infinite loop: - root@ubuntu:~# lttng create Session auto-20130624-165047 created. Traces will be written in /home/avig/lttng-traces/auto-20130624-165047 root@ubuntu:~# lttng enable-event -a -u --loglevel TRACE_ALERT All UST events are enabled in channel channel0 for loglevel TRACE_ALERT root@ubuntu:~# lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT root@ubuntu:~# lttng disable-event -a -u All UST events are disabled in channel channel0 root@ubuntu:~# lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT root@ubuntu:~# lttng disable-event -a -u (infinite loop here...) - I guess it's probably due to the setting of loglevel through enable-event twice..? Avi This body part will be downloaded on demand. ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] Problem setting a filter during enable-event, when done shortly after add-context
Hi Amit, Can you please open an issue at bugs.lttng.org so we can have a trace of the issue somewhere along with the fix ? Thanks! David Amit Margalit: Hi, I seem to have a problem setting a filter during enable-event, which happens in a script immediately after add-context succeeds. The error is Error: Invalid filter bytecode. The sequence I am going through is in the following script excerpt: lttng-sessiond with --no-kernel -v --verbose-consumer logfile 21 lttng create samba -o /local/traces/lttng/20130625114835 logfile 21 lttng enable-channel channel0 -u \ --tracefile-size ${LTTNG_MAX_TRACE_FILE_SIZE} \ --tracefile-count ${LTTNG_MAX_FILES_PER_CORE} \ --buffers-uid \ --switch-timer 100 \ --num-subbuf 16 \ --subbuf-size 262144 logfile 21 lttng add-context -u -t procname -s samba -c channel0 logfile 21 lttng enable-event -u -a --filter '$ctx.procname == smbd || $ctx.procname == winbindd' The output is shown here (with the enable-event command-line reproduced: Session samba created. Traces will be written in /local/traces/lttng/20130625114835 UST channel channel0 enabled for session samba UST context procname added to channel channel0 /usr/bin/lttng enable-event -u -a --filter '$ctx.procname==smbd || $ctx.procname==winbindd' error syntax error Parse error Error: Invalid filter bytecode If I try to wait after the failure for some time, I can run lttng disable-event -u -a, and re-run the enable-event with the filter successfully. But I tried to put the disable-event command in the script and that didn't help - i.e. the disable-event command worked, but the enable-event with filter still failed in the same way. Suggestions? Thanks, Amit Margalit IBM XIV - /Storage Reinvented/ XIV-NAS Development Team Tel. 03-689-7774 Fax. 03-689-7230 This body part will be downloaded on demand. ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] Working with lttng enable-channel
There is indeed something wrong. Avi Goren: Hi, I'm using lttng-ust and in the process of the attempt to gain some flush frequency control I encountered a problem. I'm having difficulties with the use of enable-channel. it doesn't seem to apply property changes. here's an example: - root@ubuntu:~# lttng list Currently no available tracing session root@ubuntu:~# lttng create ses Session ses created. Traces will be written in /home/avig/lttng-traces/ses-20130624-163340 root@ubuntu:~# lttng enable-event -a -u -s ses -c ch All UST events are enabled in channel ch This command creates and enables all event in the channel ch with the default settings for the channel. root@ubuntu:~# lttng disable-channel ch -u -s ses UST channel ch disabled for session ses root@ubuntu:~# lttng enable-channel ch -u --subbuf-size 1024 --num-subbuf 1 UST channel ch enabled for session ses This command actually only enable the *already* existing channel. Once a channel is created, you can't change the attributes, it's immutable. root@ubuntu:~# lttng list ses -c ch Tracing session ses: [inactive] Trace path: /home/avig/lttng-traces/ses-20130624-163340 === Domain: UST global === Buffer type: per PID - ch: [enabled] Attributes: write mode: discard subbufers size: 4096 bytes number of subbufers: 4 switch timer interval: 0 usec read timer interval: 0 usec output: mmap() Events: * (type: tracepoint) [enabled] root@ubuntu:~# lttng version lttng version 2.2.0-rc2 - Cuda ... - Am I doing something wrong? Is there a way to control flushing policy besides the use of enable-channel? If you want to control the flushing timing of a channel, use --switch-timer. For instance, for a flush buffer at each 200ms: $ lttng enable-channel ch -u --switch timer 20 Hope this can help! David Thanks, Avi This body part will be downloaded on demand. ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] [PATCH] lttng-gen-tp: remove support for # comments
On 2013-06-23 15:38, Romain Lenglet wrote: Hi Yannick, Your change does the job, thanks! However, the regular expression #[^include].*$ is incorrect, as [] matches a set of characters. For instance, '#not an include' is not removed as you intended, as '#' is followed by 'n'. I'd suggest using this regular expression instead: '#(?!include).*$' Yeah, good point, I did it really quickly. I'll send a fix soon (with more test) Thanks, -- Romain Lenglet On Jun 22, 2013, at 10:52 AM, Yannick Brosseau yannick.bross...@gmail.com wrote: Hi, I hope the latest commit on lttng-gen-tp which allows to add #include to the .tp will be an appropriate fix for your needs On 2013-06-18 17:22, Romain Lenglet wrote: I need to use non-trivial types in TP_ARGS, e.g. uint64_t, or custom C++ classes. In the latter case, the motivation is to call accessors on C++ objects only when actually tracing, in TP_FIELDS. This absolutely requires including standard header files such as stdint.h, or header files defining C++ classes. What other solutions would you suggest to cleanly enable users to include header files from .tp files? Regards, -- Romain Lenglet On Jun 18, 2013, at 12:38 PM, Yannick Brosseau yannick.bross...@gmail.com wrote: On 2013-06-18 13:49, Romain Lenglet wrote: Support #define, #include, etc. in tracepoint files. Do you have a specific use case that demonstrate the need for that? The design goal of lttng-gen-tp included generating tracepoints for other language than C, so we wanted a format more agnostics hence the support for # comments Signed-off-by: Romain Lenglet romain.leng...@berabera.info --- doc/man/lttng-gen-tp.1 |2 +- tools/lttng-gen-tp |3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/doc/man/lttng-gen-tp.1 b/doc/man/lttng-gen-tp.1 index 84c05c9..96f02c4 100644 --- a/doc/man/lttng-gen-tp.1 +++ b/doc/man/lttng-gen-tp.1 @@ -64,7 +64,7 @@ TRACEPOINT_LOGLEVEL. (See lttng-ust(3) for the complete list of available definition.) You write them as you would write them in a C header file. You can add -comments with \fB/* */\fP, \fB//\fP and \fB#\fP. +comments with \fB/* */\fP and \fB//\fP. The provider name (the first field of TRACEPOINT_EVENT) must be the same for the whole file. diff --git a/tools/lttng-gen-tp b/tools/lttng-gen-tp index 5937dfd..5ea221b 100755 --- a/tools/lttng-gen-tp +++ b/tools/lttng-gen-tp @@ -159,9 +159,6 @@ class TemplateFile: self.text = f.read() -#Remove # comments (from input and output file -removeComments = re.compile(#.*$,flags=re.MULTILINE) -self.text = removeComments.sub(,self.text) #Remove // comments removeLineComment = re.compile(\/\/.*$,flags=re.MULTILINE) nolinecomment = removeLineComment.sub(,self.text) ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
[lttng-dev] [CFP] Tracing Summit 2013, October 23rd, 2013, Edinburgh, UK
Hi, We are organizing a tracing summit taking place October 23rd in Edinburgh, UK, co-located with LinuxCon Europe. Our objective is to gather people involved in development and users of tracing tools and trace analysis tools to allow discussing the latest developments, allow users to express their needs, and generally ensure that developers and end users understand each other. If you are interested to present, please submit a proposal to submiss...@tracingsummit.org before August 21, 2013, at 23:59 EST. We are welcoming presentations from both end users and developers, on topics covering, but not limited to: * Trace collection and extraction, * Trace filtering, * Trace aggregation, * Trace formats, * Tracing multi-core systems, * Trace abstraction, * Trace modeling, * Automated trace analysis (e.g. dependency analysis), * Tracing large clusters and distributed systems, * Hardware-level tracing (e.g. DSP, GPU, bare-metal), * Trace visualisation, * Interaction between debugging and tracing, * Tracing remote control, * Analysis of large trace datasets, * Cloud trace collection and analysis, * Integration between trace tools, * Live tracing monitoring. Those can cover recently available technologies, ongoing work, and yet non-existing technologies (which are compellingly interesting to end-users). There will be a single track, containing presentations between 30 and 45 minutes per subject with discussion. For those interested to attend, registration to LinuxCon Europe 2013 or Registration to CloudOpen Europe 2013 is required in order to register to the Tracing Summit 2013. See the Tracing Summit 2013 wiki at http://www.tracingsummit.org/wiki/TracingSummit2013 for details. Thank you, Dominique Toupin Mathieu Desnoyers -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] infinite loop invoked using lttng enable/disable-event
-Message d'origine- Date: Tue, 25 Jun 2013 09:49:36 +0300 From: Avi Goren a...@reduxio.com I'm using lttng 2.2.0 and encountered an infinite loop: - # lttng create Session auto-20130624-165047 created. Traces will be written in /home/avig/lttng-traces/auto-20130624-165047 # lttng enable-event -a -u --loglevel TRACE_ALERT All UST events are enabled in channel channel0 for loglevel TRACE_ALERT # lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT # lttng disable-event -a -u All UST events are disabled in channel channel0 # lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT # lttng disable-event -a -u (infinite loop here...) - I guess it's probably due to the setting of loglevel through enable-event twice..? Avi -- I've reproduced it with one less step: # lttng create loop Session loop-20130624-165047 created. Traces will be written in /home/avig/lttng-traces/loop-20130624-165047 # lttng enable-event -a -u --loglevel TRACE_ALERT All UST events are enabled in channel channel0 for loglevel TRACE_ALERT # lttng disable-event -a -u All UST events are disabled in channel channel0 # lttng enable-event -a -u --loglevel TRACE_CRIT All UST events are enabled in channel channel0 for loglevel TRACE_CRIT # lttng list loop (...) Events: * (loglevel: TRACE_CRIT (2)) (type: tracepoint) [enabled] * (loglevel: TRACE_ALERT (1)) (type: tracepoint) [disabled] # lttng disable-event -a -u (LTTng hangs here) Remarkably, the session daemon remains very busy after the sudo kill command is sent, even though the trace has not even been started! It refuses to die and I had to restart the system. I'll post the bug up (with the session daemon log) shortly. Daniel U. Thibault Protection des systèmes et contremesures (PSC) | Systems Protection Countermeasures (SPC) Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS) R D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence RD Canada - Valcartier (DRDC Valcartier) 2459 route de la Bravoure Québec QC G3J 1X5 CANADA Vox : (418) 844-4000 x4245 Fax : (418) 844-4538 NAC : 918V QSDJ http://www.travelgis.com/map.asp?addr=918V%20QSDJ Gouvernement du Canada | Government of Canada http://www.valcartier.drdc-rddc.gc.ca/ ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
[lttng-dev] [RELEASE] LTTng Tools 2.2.0 - Cuda (STABLE)
Greetings everyone (including LTTng elves), The lttng-tools project provides a session daemon (lttng-sessiond) that acts as a tracing registry, the lttng command line for tracing control, a lttng-ctl library for tracing control and a lttng-relayd for network streaming. This is the 2.2 stable release. Three main things were added being the per UID buffers for UST, the periodical flush for metadata and the trace file rotation. Per UID buffers makes every application sharing the same UID to use the same buffers. $ lttng create $ lttng enable-channel chan1 -u --buffers-uid ... The periodical flush for metadata is also added like so: $ lttng enable-channel metadata --switch-timer 20 -u Also, the buffers for UST application are now created in the consumer and passed to the application. Thus, the buffer ownership has been transfered from the UST tracer to the consumer. Finally, the new feature worth noting is the trace file rotation. The -C and -W option are added to the enable-channel command and control the maximum size of trace files and the maximum number of them. See man lttng.1 for more details. Changelog: 2013-06-25 lttng-tools 2.2.0 (National Catfish Day) * STABLE VERSION * Fix: if relayd is unreachable, disable consumer for the session * Fix: possible infinite loop in disable ust event * Fix: don't enable a channel if a session was already started * Fix: bad type for the relayd id * Fix: add debug statement in kernel flush metadata * Fix: destroy default created channel if add-context fails * Fix: clarify tracefile size/count in lttng.1 man * Fix: don't stop a session that was not previously started * Fix: update lttng.1 man page * Fix: bad protocol flow between sessiond and consumerd * Fix: kernel memory leak in error path Note that there is still open issues in the bug tracker for 2.2 but they are not release critical at the moment. New release of 2.2.x will be done once they are all fixed or, of course, any critical bugs appears after this release. Please feel free to email the list about any questions/comments concerning this release. For bugs or missing documentations, use bugs.lttng.org! Using it is testing it! Project website: http://lttng.org/lttng2.0 Download link: http://lttng.org/files/lttng-tools/lttng-tools-2.2.0.tar.bz2 (for the PGP signature, same file with .asc appended) Thanks to all! Cheers! David ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
[lttng-dev] [RELEASE] LTTng-UST 2.2.0 - Cuda (STABLE)
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. Noteworthy new feature in LTTng-UST 2.2.0: - per UID buffers for UST, - periodical flush for metadata, - trace file rotation. See the lttng-tools announcement for details. Changelog since 2.2.0-rc3: 2013-06-25 lttng-ust 2.2.0 * Disable doc/examples build * Fix: lttng-events VPATH build * doc/examples: build gen-tp example by default * doc/examples: support BSD make Project website: http://lttng.org Download link: http://lttng.org/download (please refer to the README file for installation instructions) -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
[lttng-dev] [RELEASE] LTTng modules 2.2.0 - Cuda (STABLE)
The LTTng modules provide Linux kernel tracing capability to the LTTng 2.x tracer toolset. Noteworthy features in lttng-modules 2.2.0: - Many new subsystems are instrumented. Project website: http://lttng.org Download link: http://lttng.org/download (please refer to the README files for installation instructions and lttng-tools doc/quickstart.txt for usage information) -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
Re: [lttng-dev] [RELEASE] LTTng-UST 2.2.0 - Cuda (STABLE)
* Mathieu Desnoyers (mathieu.desnoy...@efficios.com) wrote: 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. Noteworthy new feature in LTTng-UST 2.2.0: - per UID buffers for UST, - periodical flush for metadata, - trace file rotation. Just for completeness, I'm pasting the Major new features description found in the 2.2.0-rc3 release announcement: Major new features: - Per context filtering (vtid, vpid, procname) with e.g. --filter 'procname==apache2' - Buffers shared across applications with same user id e.g. lttng enable-channel -u mychan --buffers-uid - Implement --switch-timer and --read-timer options (periodical flush and RT-awareness). - Function entry/exit tracing (see lttng-ust-cyg-profile(3) manpage). Thanks, Mathieu See the lttng-tools announcement for details. Changelog since 2.2.0-rc3: 2013-06-25 lttng-ust 2.2.0 * Disable doc/examples build * Fix: lttng-events VPATH build * doc/examples: build gen-tp example by default * doc/examples: support BSD make Project website: http://lttng.org Download link: http://lttng.org/download (please refer to the README file for installation instructions) -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
[lttng-dev] New LTTNG user
Hi when use lttng network tracepoint it didn't display network interface mode (like promiscuous mode or other ) . did i miss some tracepoint option or it's a limitation ? regard ___ lttng-dev mailing list lttng-dev@lists.lttng.org http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev