[lttng-dev] [PATCH lttng-ust] Cleanup: Remove the no longer needed liblttng-ust-jul folder
Mathieu Desnoyers
mathieu.desnoyers at efficios.com
Thu Sep 25 12:28:39 EDT 2014
merged, thanks!
Mathieu
----- Original Message -----
> From: "Christian Babeux" <christian.babeux at efficios.com>
> To: lttng-dev at lists.lttng.org
> Cc: "mathieu desnoyers" <mathieu.desnoyers at efficios.com>, "Christian Babeux" <christian.babeux at efficios.com>
> Sent: Thursday, September 25, 2014 12:08:11 PM
> Subject: [PATCH lttng-ust] Cleanup: Remove the no longer needed liblttng-ust-jul folder
>
> Signed-off-by: Christian Babeux <christian.babeux at efficios.com>
> ---
> liblttng-ust-jul/org/lttng/ust/jul/LTTngAgent.java | 138
> ---------------------
> .../org/lttng/ust/jul/LTTngLogHandler.java | 80 ------------
> 2 files changed, 218 deletions(-)
> delete mode 100644 liblttng-ust-jul/org/lttng/ust/jul/LTTngAgent.java
> delete mode 100644 liblttng-ust-jul/org/lttng/ust/jul/LTTngLogHandler.java
>
> diff --git a/liblttng-ust-jul/org/lttng/ust/jul/LTTngAgent.java
> b/liblttng-ust-jul/org/lttng/ust/jul/LTTngAgent.java
> deleted file mode 100644
> index 7c8e98e..0000000
> --- a/liblttng-ust-jul/org/lttng/ust/jul/LTTngAgent.java
> +++ /dev/null
> @@ -1,138 +0,0 @@
> -/*
> - * Copyright (C) 2013 - David Goulet <dgoulet at efficios.com>
> - *
> - * This library is free software; you can redistribute it and/or modify it
> - * under the terms of the GNU Lesser General Public License, version 2.1
> only,
> - * as published by the Free Software Foundation.
> - *
> - * This library is distributed in the hope that it will be useful, but
> WITHOUT
> - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
> License
> - * for more details.
> - *
> - * You should have received a copy of the GNU Lesser General Public License
> - * along with this library; if not, write to the Free Software Foundation,
> - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
> - */
> -
> -package org.lttng.ust.jul;
> -
> -import java.io.IOException;
> -import java.io.InputStream;
> -import java.io.BufferedReader;
> -import java.io.FileReader;
> -import java.util.concurrent.Semaphore;
> -import java.util.concurrent.TimeUnit;
> -import java.util.logging.FileHandler;
> -import java.util.logging.Handler;
> -import java.util.logging.Level;
> -import java.util.logging.Logger;
> -import java.util.logging.LogManager;
> -import java.util.Enumeration;
> -
> -public class LTTngAgent {
> -
> - /* Possible that we have to threads handling two sessiond. */
> - private static LTTngLogHandler lttngHandlerRoot;
> - private static LTTngLogHandler lttngHandlerUser;
> - private static LTTngThread lttngThreadRoot;
> - private static LTTngThread lttngThreadUser;
> - private static Thread sessiondThRoot;
> - private static Thread sessiondThUser;
> -
> - /* Singleton agent object. */
> - private static LTTngAgent curAgent = null;
> -
> - /* Indicate if this object has been initialized. */
> - private static boolean initialized = false;
> -
> - private static Semaphore registerSem;
> - private final static int semTimeout = 3; /* Seconds */
> -
> - /*
> - * Default value to connect to session daemon. Port number is dynamically
> - * fetched from the port file that is created by a running session daemon.
> - */
> - private static final String sessiondAddr = "127.0.0.1";
> -
> - /*
> - * Constructor is private. This is a singleton and a reference should be
> - * acquired using getLTTngAgent().
> - */
> - private LTTngAgent() throws IOException {
> - this.logManager = LogManager.getLogManager();
> - this.lttngHandlerUser = new LTTngLogHandler();
> - this.lttngHandlerRoot = new LTTngLogHandler();
> - this.lttngHandlerRoot.is_root = 1;
> - this.registerSem = new Semaphore(0, true);
> - }
> -
> - /*
> - * Public getter to acquire a reference to this singleton object.
> - */
> - public static synchronized LTTngAgent getLTTngAgent() throws IOException {
> - if (curAgent == null) {
> - curAgent = new LTTngAgent();
> - curAgent.init();
> - }
> -
> - return curAgent;
> - }
> -
> - /*
> - * Initialize LTTngAgent. This will attach the log handler to all Logger
> - * returned by the logManager.
> - */
> - private synchronized void init() throws SecurityException, IOException {
> - int nr_acquires = 0;
> -
> - if (this.initialized) {
> - return;
> - }
> -
> - /* Handle user session daemon if any. */
> - this.lttngThreadUser = new LTTngThread(this.sessiondAddr,
> - this.lttngHandlerUser, this.registerSem);
> - this.sessiondThUser = new Thread(lttngThreadUser);
> - this.sessiondThUser.setDaemon(true);
> - this.sessiondThUser.start();
> - /* Wait for registration done of per-user sessiond */
> - nr_acquires++;
> -
> - /* Handle root session daemon. */
> - this.lttngThreadRoot = new LTTngThread(this.sessiondAddr,
> - this.lttngHandlerRoot, this.registerSem);
> - this.sessiondThRoot = new Thread(lttngThreadRoot);
> - this.sessiondThRoot.setDaemon(true);
> - this.sessiondThRoot.start();
> - /* Wait for registration done of system-wide sessiond */
> - nr_acquires++;
> -
> - /* Wait for each registration to end. */
> - try {
> - this.registerSem.tryAcquire(nr_acquires, semTimeout,
> - TimeUnit.SECONDS);
> - } catch (InterruptedException e) {
> - e.printStackTrace();
> - }
> -
> - this.initialized = true;
> - }
> -
> - public void dispose() throws IOException {
> - this.lttngJULThreadUser.dispose();
> - this.lttngJULThreadRoot.dispose();
> -
> - /* Remove handlers from the root logger */
> - Logger rootLogger = LogManager.getLogManager().getLogger("");
> - rootLogger.removeHandler(this.lttngHandlerUser);
> - rootLogger.removeHandler(this.lttngHandlerRoot);
> -
> - try {
> - this.sessiondThUser.join();
> - this.sessiondThRoot.join();
> - } catch (InterruptedException e) {
> - e.printStackTrace();
> - }
> - }
> -}
> diff --git a/liblttng-ust-jul/org/lttng/ust/jul/LTTngLogHandler.java
> b/liblttng-ust-jul/org/lttng/ust/jul/LTTngLogHandler.java
> deleted file mode 100644
> index 008b105..0000000
> --- a/liblttng-ust-jul/org/lttng/ust/jul/LTTngLogHandler.java
> +++ /dev/null
> @@ -1,80 +0,0 @@
> -/*
> - * Copyright (C) 2013 - David Goulet <dgoulet at efficios.com>
> - *
> - * This library is free software; you can redistribute it and/or modify it
> - * under the terms of the GNU Lesser General Public License, version 2.1
> only,
> - * as published by the Free Software Foundation.
> - *
> - * This library is distributed in the hope that it will be useful, but
> WITHOUT
> - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
> License
> - * for more details.
> - *
> - * You should have received a copy of the GNU Lesser General Public License
> - * along with this library; if not, write to the Free Software Foundation,
> - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
> - */
> -
> -package org.lttng.ust.jul;
> -
> -import java.lang.String;
> -import java.util.logging.Handler;
> -import java.util.logging.LogRecord;
> -import java.util.logging.LogManager;
> -import java.util.logging.Level;
> -import java.util.logging.Logger;
> -import java.util.Collections;
> -import java.util.HashMap;
> -import java.util.Map;
> -
> -import org.lttng.ust.jul.LTTngUst;
> -
> -public class LTTngLogHandler extends Handler {
> - /* Am I a root Log Handler. */
> - public int is_root = 0;
> - public int refcount = 0;
> -
> - /* Logger object attached to this handler that can trigger a tracepoint. */
> - public Map<String, LTTngEvent> enabledEvents =
> - Collections.synchronizedMap(new HashMap<String, LTTngEvent>());
> -
> - /* Constructor */
> - public LTTngLogHandler() {
> - super();
> - /* Initialize LTTng UST tracer. */
> - LTTngUst.init();
> - }
> -
> - /*
> - * Cleanup this handler state meaning put it back to a vanilla state.
> - */
> - public void clear() {
> - this.enabledEvents.clear();
> - }
> -
> - @Override
> - public void close() throws SecurityException {}
> -
> - @Override
> - public void flush() {}
> -
> - @Override
> - public void publish(LogRecord record) {
> - /*
> - * Specific tracepoing designed for JUL events. The source class of the
> - * caller is used for the event name, the raw message is taken, the
> - * loglevel of the record and the thread ID.
> - */
> - if (this.is_root == 1) {
> - LTTngUst.tracepointS(record.getMessage(),
> - record.getLoggerName(), record.getSourceClassName(),
> - record.getSourceMethodName(), record.getMillis(),
> - record.getLevel().intValue(), record.getThreadID());
> - } else {
> - LTTngUst.tracepointU(record.getMessage(),
> - record.getLoggerName(), record.getSourceClassName(),
> - record.getSourceMethodName(), record.getMillis(),
> - record.getLevel().intValue(), record.getThreadID());
> - }
> - }
> -}
> --
> 2.1.0
>
>
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
More information about the lttng-dev
mailing list