Wouldn't this implementation contain incorrect caller location information?

On 10 November 2017 at 19:25, <ggreg...@apache.org> wrote:

> Repository: logging-log4j2
> Updated Branches:
>   refs/heads/master aad2f132b -> 7d52f131e
>
>
> [LOG4J2-2114] Provide a native Log4j 2 implementation of Eclipse Jetty's
> org.eclipse.jetty.util.log.Logger.
>
> Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
> Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/
> commit/7d52f131
> Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/7d52f131
> Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/7d52f131
>
> Branch: refs/heads/master
> Commit: 7d52f131ec1e000834bcb40343f3f2d41805c75a
> Parents: aad2f13
> Author: Gary Gregory <ggreg...@apache.org>
> Authored: Fri Nov 10 18:25:47 2017 -0700
> Committer: Gary Gregory <ggreg...@apache.org>
> Committed: Fri Nov 10 18:25:47 2017 -0700
>
> ----------------------------------------------------------------------
>  log4j-appserver/pom.xml                         |   8 +
>  .../log4j/appserver/jetty/Log4j2Logger.java     | 184 +++++++++++++++++++
>  src/changes/changes.xml                         |   3 +
>  3 files changed, 195 insertions(+)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/
> 7d52f131/log4j-appserver/pom.xml
> ----------------------------------------------------------------------
> diff --git a/log4j-appserver/pom.xml b/log4j-appserver/pom.xml
> index e96b1fc..6acd77b 100644
> --- a/log4j-appserver/pom.xml
> +++ b/log4j-appserver/pom.xml
> @@ -34,6 +34,7 @@
>      <docLabel>Web Documentation</docLabel>
>      <projectDir>/log4j-appserver</projectDir>
>      <tomcat.version>8.5.20</tomcat.version>
> +    <jetty.version>8.2.0.v20160908</jetty.version> <!--  Jetty 9
> requires Java 8 -->
>      <module.name>org.apache.logging.log4j.appserver</module.name>
>    </properties>
>
> @@ -56,6 +57,7 @@
>        <groupId>org.apache.tomcat</groupId>
>        <artifactId>tomcat-catalina</artifactId>
>        <version>${tomcat.version}</version>
> +      <scope>provided</scope>
>        <exclusions>
>          <exclusion>
>            <groupId>org.apache.tomcat</groupId>
> @@ -71,6 +73,12 @@
>          </exclusion>
>        </exclusions>
>      </dependency>
> +    <dependency>
> +      <groupId>org.eclipse.jetty</groupId>
> +      <artifactId>jetty-util</artifactId>
> +      <version>${jetty.version}</version>
> +      <scope>provided</scope>
> +    </dependency>
>
>      <!-- Test dependencies -->
>      <dependency>
>
> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/
> 7d52f131/log4j-appserver/src/main/java/org/apache/logging/
> log4j/appserver/jetty/Log4j2Logger.java
> ----------------------------------------------------------------------
> diff --git a/log4j-appserver/src/main/java/org/apache/logging/log4j/
> appserver/jetty/Log4j2Logger.java b/log4j-appserver/src/main/
> java/org/apache/logging/log4j/appserver/jetty/Log4j2Logger.java
> new file mode 100644
> index 0000000..7d1ce14
> --- /dev/null
> +++ b/log4j-appserver/src/main/java/org/apache/logging/log4j/
> appserver/jetty/Log4j2Logger.java
> @@ -0,0 +1,184 @@
> +/*
> + * Licensed to the Apache Software Foundation (ASF) under one or more
> + * contributor license agreements. See the NOTICE file distributed with
> + * this work for additional information regarding copyright ownership.
> + * The ASF licenses this file to You under the Apache license, Version 2.0
> + * (the "License"); you may not use this file except in compliance with
> + * the License. You may obtain a copy of the License at
> + *
> + *      http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing, software
> + * distributed under the License is distributed on an "AS IS" BASIS,
> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> + * See the license for the specific language governing permissions and
> + * limitations under the license.
> + */
> +
> +package org.apache.logging.log4j.appserver.jetty;
> +
> +import org.apache.logging.log4j.LogManager;
> +import org.eclipse.jetty.util.log.AbstractLogger;
> +import org.eclipse.jetty.util.log.Logger;
> +
> +/**
> + * Provides a native Apache Log4j 2 for Jetty logging.
> + */
> +public class Log4j2Logger extends AbstractLogger {
> +
> +    private final org.apache.logging.log4j.Logger logger;
> +
> +    private final String name;
> +
> +    public Log4j2Logger(final String name) {
> +        super();
> +        this.name = name;
> +        this.logger = LogManager.getLogger(name);
> +    }
> +
> +    public Log4j2Logger() {
> +        this("");
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#debug(java.lang.String,
> java.lang.Object[])
> +     */
> +    @Override
> +    public void debug(final String msg, final Object... args) {
> +        logger.debug(msg, args);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#debug(java.lang.String,
> java.lang.Throwable)
> +     */
> +    @Override
> +    public void debug(final String msg, final Throwable thrown) {
> +        logger.debug(msg, thrown);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#debug(java.lang.Throwable)
> +     */
> +    @Override
> +    public void debug(final Throwable thrown) {
> +        logger.debug(thrown);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#getName()
> +     */
> +    @Override
> +    public String getName() {
> +        return name;
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#ignore(java.lang.Throwable)
> +     */
> +    @Override
> +    public void ignore(final Throwable ignored) {
> +        // TODO Auto-generated method stub
> +
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#info(java.lang.String,
> java.lang.Object[])
> +     */
> +    @Override
> +    public void info(final String msg, final Object... args) {
> +        logger.info(msg, args);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#info(java.lang.String,
> java.lang.Throwable)
> +     */
> +    @Override
> +    public void info(final String msg, final Throwable thrown) {
> +        logger.info(msg, thrown);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#info(java.lang.Throwable)
> +     */
> +    @Override
> +    public void info(final Throwable thrown) {
> +        logger.info(thrown);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#isDebugEnabled()
> +     */
> +    @Override
> +    public boolean isDebugEnabled() {
> +        return logger.isDebugEnabled();
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.AbstractLogger#newLogger(java.
> lang.String)
> +     */
> +    @Override
> +    protected Logger newLogger(final String fullname) {
> +        return new Log4j2Logger(fullname);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#setDebugEnabled(boolean)
> +     */
> +    @Override
> +    public void setDebugEnabled(final boolean enabled) {
> +        warn("setDebugEnabled not implemented");
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#warn(java.lang.String,
> java.lang.Object[])
> +     */
> +    @Override
> +    public void warn(final String msg, final Object... args) {
> +        logger.warn(msg, args);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#warn(java.lang.String,
> java.lang.Throwable)
> +     */
> +    @Override
> +    public void warn(final String msg, final Throwable thrown) {
> +        logger.warn(msg, thrown);
> +    }
> +
> +    /*
> +     * (non-Javadoc)
> +     *
> +     * @see org.eclipse.jetty.util.log.Logger#warn(java.lang.Throwable)
> +     */
> +    @Override
> +    public void warn(final Throwable thrown) {
> +        logger.warn(thrown);
> +    }
> +
> +}
>
> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/
> 7d52f131/src/changes/changes.xml
> ----------------------------------------------------------------------
> diff --git a/src/changes/changes.xml b/src/changes/changes.xml
> index 2bcefb2..070e4a1 100644
> --- a/src/changes/changes.xml
> +++ b/src/changes/changes.xml
> @@ -37,6 +37,9 @@
>        <action issue="LOG4J2-2103" dev="mikes" type="add">
>          XML encoding for PatternLayout.
>        </action>
> +      <action issue="LOG4J2-2114" dev="ggregory" type="add">
> +        Provide a native Log4j 2 implementation of Eclipse Jetty's
> org.eclipse.jetty.util.log.Logger.
> +      </action>
>        <action issue="LOG4J2-1203" dev="mikes" type="add" due-to="Robert
> Turner">
>          Allow filtering of line breaks in layout pattern.
>        </action>
>
>


-- 
Matt Sicker <boa...@gmail.com>

Reply via email to