Project

General

Profile

Actions

Bug #831

closed

lttng disable-event does not work for JUL events

Added by Jérémie Galarneau over 9 years ago. Updated over 9 years ago.

Status:
Resolved
Priority:
High
Assignee:
Target version:
-
Start date:
08/25/2014
Due date:
% Done:

100%

Estimated time:

Description

It seems that the disable-event command does nothing when applied to a JUL event.

$ lttng create
Spawning a session daemon
Session auto-20140825-150324 created.
Traces will be written in /home/jgalar/lttng-traces/auto-20140825-150324

$ lttng enable-event -j "my_event" 
JUL event my_event enabled.

$ lttng enable-event -j "event_a" 
JUL event event_a enabled.

$ lttng enable-event -j "event_b" 
JUL event event_b enabled.

$ lttng enable-event -j "event_c" 
JUL event event_c enabled.

$ lttng disable-event -j "my_event" 
JUL event my_event disabled in channel channel0 for session auto-20140825-150324

$ lttng list auto-20140825-150324
Tracing session auto-20140825-150324: [inactive]
    Trace path: /home/jgalar/lttng-traces/auto-20140825-150324

=== Domain: UST global ===

Buffer type: per UID

Channels:
-------------
- lttng_jul_channel: [enabled]

    Attributes:
      overwrite mode: 0
      subbufers size: 131072
      number of subbufers: 4
      switch timer interval: 0
      read timer interval: 0
      trace file count: 0
      trace file size (bytes): 0
      output: mmap()

    Events:
      lttng_jul:user* (type: tracepoint) [enabled] [with filter]
      lttng_jul:user* (type: tracepoint) [enabled] [with filter]
      lttng_jul:user* (type: tracepoint) [enabled] [with filter]
      lttng_jul:user* (type: tracepoint) [enabled] [with filter]

=== Domain: JUL (Java Util Logging) ===

Events (Logger name):
---------------------
    - my_event [disabled] (loglevel: JUL_ALL)
    - event_b [enabled] (loglevel: JUL_ALL)
    - event_a [enabled] (loglevel: JUL_ALL)
    - event_c [enabled] (loglevel: JUL_ALL)

As you can see above, my_event appears as enabled in the UST domain, but disabled in the JUL domain.

The resulting XML from an "lttng save" event shows all JUL events as enabled with their respective filter strings:

<?xml version="1.0" encoding="UTF-8"?>
<sessions>
    <session>
        <name>auto-20140825-150324</name>
        <domains>
            <domain>
                <type>UST</type>
                <buffer_type>PER_UID</buffer_type>
                <channels/>
            </domain>
            <domain>
                <type>JUL</type>
                <buffer_type>PER_UID</buffer_type>
                <channels>
                    <channel>
                        <name>lttng_jul_channel</name>
                        <enabled>true</enabled>
                        <overwrite_mode>DISCARD</overwrite_mode>
                        <subbuffer_size>131072</subbuffer_size>
                        <subbuffer_count>4</subbuffer_count>
                        <switch_timer_interval>0</switch_timer_interval>
                        <read_timer_interval>0</read_timer_interval>
                        <output_type>MMAP</output_type>
                        <tracefile_size>0</tracefile_size>
                        <tracefile_count>0</tracefile_count>
                        <live_timer_interval>0</live_timer_interval>
                        <events>
                            <event>
                                <name>lttng_jul:user*</name>
                                <enabled>true</enabled>
                                <type>TRACEPOINT</type>
                                <loglevel_type>ALL</loglevel_type>
                                <loglevel>-1</loglevel>
                                <filter>logger_name == &quot;event_c&quot;</filter>
                            </event>
                            <event>
                                <name>lttng_jul:user*</name>
                                <enabled>true</enabled>
                                <type>TRACEPOINT</type>
                                <loglevel_type>ALL</loglevel_type>
                                <loglevel>-1</loglevel>
                                <filter>logger_name == &quot;event_b&quot;</filter>
                            </event>
                            <event>
                                <name>lttng_jul:user*</name>
                                <enabled>true</enabled>
                                <type>TRACEPOINT</type>
                                <loglevel_type>ALL</loglevel_type>
                                <loglevel>-1</loglevel>
                                <filter>logger_name == &quot;event_a&quot;</filter>
                            </event>
                            <event>
                                <name>lttng_jul:user*</name>
                                <enabled>true</enabled>
                                <type>TRACEPOINT</type>
                                <loglevel_type>ALL</loglevel_type>
                                <loglevel>-1</loglevel>
                                <filter>logger_name == &quot;my_event&quot;</filter>
                            </event>
                        </events>
                        <contexts/>
                    </channel>
                </channels>
            </domain>
        </domains>
        <started>false</started>
        <output>
            <consumer_output>
                <enabled>true</enabled>
                <destination>
                    <path>/home/jgalar/lttng-traces/auto-20140825-150324</path>
                </destination>
            </consumer_output>
        </output>
    </session>
</sessions>

This is probably a relic from the time when the JUL agent was actually registered to the individual loggers instead of the "root" handler.

Actions #1

Updated by David Goulet over 9 years ago

  • Status changed from New to Confirmed
Actions #2

Updated by David Goulet over 9 years ago

  • Status changed from Confirmed to Resolved
  • % Done changed from 0 to 100

Applied in changeset tools|commit:0dcfcf94b356c12e3936fa27f350896d96724e4e.

Actions

Also available in: Atom PDF