Print the provided trace point if the input trace component allows exit
level messages.

@param tc
the non-null <code>TraceComponent</code> the event is
associated with.
@param methodName
767351
public static final void exit(TraceComponent tc, String methodName) {
        TrConfigurator.getDelegate().exit(tc, methodName);
    }
204261
public void trace(Object message, Throwable t) {
        differentiatedLog(null, LOGGER_FQCN, LocationAwareLogger.TRACE_INT, message, t);
    }
668138
@Override
    public void log(String msg) {
        verifySystemOut();
        PrintStream printStream = out;
        try {
            if (userInputActive) {
                erasePrompt(printStream);
            }
            if (msg.endsWith(LINE_SEPARATOR)) {
                printStream.print(msg);
            } else {
                printStream.println(msg);
            }
            cursorMove = 0;
        } finally {
            printStream.flush();
            postPrintMessage();
        }
    }
244383
@Override
    public void setMethod(MethodValues method) {
        this.myMethod = method;
        super.setFirstLineChanged();
        if (TraceComponent.isAnyTracingEnabled() && tc.isEventEnabled()) {
            Tr.event(tc, "setMethod(v): " + (null != method ? method.getName() : null));
        }
    }
360958
@Override
    public void debug() {
        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
            Tr.debug(tc, "Response Message: " + this);
            Tr.debug(tc, "Status: " + getStatusCodeAsInt());
            Tr.debug(tc, "Reason: " + getReasonPhrase());
            super.debug();
        }
    }
1220814
static void registerTraceComponent(TraceComponent tc) {
        tc.setTraceSpec(activeTraceSpec);

        TrService activeDelegate = TrConfigurator.getDelegate();
        activeDelegate.register(tc);

        TrConfigurator.traceComponentRegistered(tc);

        // Add the new TraceComponent to the queue of new trace components
        newTracecomponents.add(tc);
        processNewTraceComponents();
        // There is a tiny window where the new trace component never gets processed,
        // however that isn't a problem as we only care that the set is correct is at the
        // beginning of our setTraceSpec method and it does process the list first
    }
872040
@Override
    public void printStackTrace(PrintWriter pw) {
        if ( getCause() != null ) {
            String superString = getLocalMessage();
            synchronized (pw) {
                pw.print(superString);
                pw.print((superString.endsWith(".") ?
                          " Caused by " : ". Caused by "));
                getCause().printStackTrace( pw );
            }
        } else {
            super.printStackTrace( pw );
        }
    }
363725
public void trace(Object message, Throwable t) {
        logger.trace(String.valueOf(message), t);
    }
108564
@Trivial
    public static void printTrace(String key, Object value, int tabLevel) {
        if (tc.isDebugEnabled()) {
            StringBuilder msg = new StringBuilder();
            for (int count = 0; count < tabLevel; count++) {
                msg.append("\t");
            }
            if (value != null) {
                msg.append(key);
                msg.append(":");
                msg.append(value);
            } else {
                msg.append(key);
            }
            Tr.debug(tc, msg.toString());
        }
    }
410305
@Override
    public void trace(String format, Object arg) {
        if (logger.isTraceEnabled()) {
            FormattingTuple ft = MessageFormatter.format(format, arg);
            logger.trace(ft.getMessage(), ft.getThrowable());
        }
    }
234628
public static void printStackTrace(StackTraceElement[] trace, java.io.PrintStream out) {
        Strand.printStackTrace(trace, out);
    }
1334516
@Override
	public void trace(String o, Throwable t) {
        log.trace(o, t);
    }
1131681
public static void printStackTrace(Throwable e, PrintWriter out)
  {
    StackTraceElement lastHead = null;

    ClassLoader loader = SimpleLoader.create(WorkDir.getLocalWorkDir());
    
    while (true) {
      if (e.getMessage() != null)
        out.println(e.getClass().getName() + ": " + e.getMessage());
      else
        out.println(e.getClass().getName());

      StackTraceElement []trace = e.getStackTrace();
      StackTraceElement nextHead = trace.length > 0 ? trace[0] : null;

      for (int i = 0; i < trace.length; i++) {
        if (trace[i].equals(lastHead))
          break;

        out.print("\tat ");

        printStackTraceElement(trace[i], out, loader);
      }

      lastHead = nextHead;

      Throwable cause = e.getCause();

      if (cause != null) {
        out.print("Caused by: ");
        e = cause;
      }
      else
        break;
    }
  }
416068
public static void exception(TraceComponent tc, Throwable t) {
    if(isTracing()) SibTr.exception(tc, t);

  }
647793
public void log(String message, Throwable t) {
	System.out.println(message);
	System.out.println(getStackTrace(t));
    }
470117
public void trace(final String msg) {
        if (proxy.isTraceEnabled()) {
            if (proxy instanceof LocationAwareLogger) {
                ((LocationAwareLogger) proxy).log(null, FQCN, LocationAwareLogger.TRACE_INT, msg, null, null);
            } else {
                proxy.trace(msg);
            }
        }
    }
871049
public final void exit(Class sourceClass,
                           String methodName) {
        internalExit(null,
                     sourceClass,
                     methodName,
                     null);
    }