logback-access配置

时间:2013-03-28 17:12:02

标签: tomcat6 logback maven-tomcat-plugin

我正在尝试为基于spring的tomcat应用程序配置logback-access。在我的pom.xml文件中添加了以下行:

                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                    <version>${slf4j.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>jcl-over-slf4j</artifactId>
                    <version>${slf4j.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-classic</artifactId>
                    <version>${logback.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-core</artifactId>
                    <version>${logback.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-access</artifactId>
                    <version>${logback.version}</version>
                    <scope>runtime</scope>
                </dependency>   

我还在pom文件的tomcat插件配置中添加了这个。

       <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat6-maven-plugin</artifactId>
            <version>${maven.tomcat.plugin}</version>           
            <configuration>
                <systemProperties>
                    <java.util.logging.manager>org.apache.juli.ClassLoaderLogManager</java.util.logging.manager>
                    <logback.ContextSelector>JNDI</logback.ContextSelector>
                </systemProperties>
            </configuration>                
            <dependencies>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                    <version>${slf4j.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>jcl-over-slf4j</artifactId>
                    <version>${slf4j.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-classic</artifactId>
                    <version>${logback.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-core</artifactId>
                    <version>${logback.version}</version>
                    <scope>runtime</scope>
                </dependency>
                <dependency>
                    <groupId>ch.qos.logback</groupId>
                    <artifactId>logback-access</artifactId>
                    <version>${logback.version}</version>
                    <scope>runtime</scope>
                </dependency>   
            </dependencies>
        </plugin>

我已将资源文件放在以下位置: SRC /主/资源/ logback.xml 的src /主/资源/的logback-access.xml

但是当logback.xml工作时,tomcat无法获取logback-access.xml文件。如何使用我的tomcat6插件附加访问xml文件?

1 个答案:

答案 0 :(得分:0)

我也尝试了同样但我发现tomcat6 / 7-maven-plugin没有能力运行这些配置,因为这必须在容器级别配置 参考http://logback.qos.ch/access.html#tomcat

您可以使用“cargo-maven2-plugin”在现有容器中运行该应用程序,并为该回调访问配置该容器

配置货物这样的东西

         <plugin>
            <groupId>org.codehaus.cargo</groupId>
            <artifactId>cargo-maven2-plugin</artifactId>
            <version>${cargo.maven.plugin}</version>
            <configuration>
                <container>
                    <containerId>tomcat7x</containerId>
                    <type>installed</type>
                    <home>${tomcat.home}</home>
                    <timeout>1800000</timeout> 
                </container>
                <configuration>
                    <type>existing</type>
                    <home>${tomcat.home}</home>
                </configuration>
                <deployables>
                    <deployable>
                        <groupId>${project.groupId}</groupId>
                        <artifactId>YOUR_WEB_ARTIFICT</artifactId>
                        <type>war</type>
                    </deployable>
                </deployables>
            </configuration>
        </plugin>

我使用了货物插件版本1.3.3

然后执行cargo:deployer-deploy

和货物:运行或货物:开始