<!--
 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.

-->
<project name="Log4j"
         xmlns="http://maven.apache.org/DECORATION/1.4.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/DECORATION/1.4.0 http://maven.apache.org/xsd/decoration-1.4.0.xsd">
  <bannerLeft>
    <src>images/ls-logo.jpg</src>
    <href>http://logging.apache.org</href>
  </bannerLeft>
  <bannerRight>
    <src>images/logo.png</src>
    <href>http://logging.apache.org/log4j/2.x</href>
  </bannerRight>
  <skin>
    <groupId>org.apache.maven.skins</groupId>
    <artifactId>maven-fluido-skin</artifactId>
    <version>1.8</version>
  </skin>
  <body>
    <links>
      <item name="Logging Wiki" href="https://cwiki.apache.org/confluence/display/LOGGING/Log4j"/>
      <item name="Apache" href="https://www.apache.org/"/>
      <item name="Logging Services" href="https://logging.apache.org/"/>
      <item name="Sonar" href="https://analysis.apache.org/dashboard/index/org.apache.logging.log4j:log4j"/>
      <item name="GitHub" href="https://github.com/apache/logging-log4j2"/>
    </links>

    <menu name="Apache Log4j™ 2" inherit="top" img="img/glyphicons/home.png">
      <item name="About" href="/index.html"/>
      <item name="Download" href="/download.html"/>
      <item name="Javadoc" href="/javadoc.html" collapse="true">
        <item name="Log4j 2 API" href="/log4j-api/apidocs/index.html" />
        <item name="Implementation" href="/log4j-core/apidocs/index.html" />
        <item name="JSP Tag Library" href="/log4j-taglib/apidocs/index.html" />
        <item name="JSP Tag Library (TLD Doc)" href="/log4j-taglib/tlddoc/index.html" />
      </item>
      <item name="Maven, Ivy, Gradle Artifacts" href="/maven-artifacts.html" collapse="true">
        <item name="Maven" href="/maven-artifacts.html#Using_Log4j_in_your_Apache_Maven_build" />
        <item name="Ivy" href="/maven-artifacts.html#Using_Log4j_in_your_Apache_Ivy_build" />
        <item name="Gradle" href="/maven-artifacts.html#Using_Log4j_in_your_Gradle_build" />
        <item name="SBT" href="/maven-artifacts.html#Using_Log4j_in_your_SBT_build" />
        <item name="Bill of Material" href="/maven-artifacts.html#Bill_of_Material" />
        <item name="Optional Components" href="/maven-artifacts.html#Optional_Components" />
        <item name="Snapshot builds" href="/maven-artifacts.html#Snapshot_builds" />
      </item>
      <item name="Runtime Dependencies" href="/runtime-dependencies.html"/>
      <item name="Changelog" href="/changelog.html"/>
      <item name="FAQ" href="/faq.html"/>
      <item name="Performance" href="/performance.html" collapse="true">
        <item name="Benchmarks" href="/performance.html#benchmarks" />
        <item name="Logging Library Comparison" href="/performance.html#loglibComparison" />
        <item name="Async Logging Comparison" href="/performance.html#asyncLogging" />
        <item name="Async Logging Latency" href="/performance.html#asyncLoggingResponseTime" />
        <item name="Parameters" href="/performance.html#asyncLoggingWithParams" />
        <item name="Location" href="/performance.html#asyncLoggingWithLocation" />
        <item name="File Logging Comparison" href="/performance.html#fileLoggingComparison" />
        <item name="Filtering Comparison" href="/performance.html#filtering" />
        <item name="Trade-offs" href="/performance.html#tradeoffs" />
      </item>
      <item name="Articles and Tutorials" href="/articles.html"/>
      <item name="Security" href="/security.html"/>
      <item name="Support" href="/support.html"/>
      <item name="Thanks" href="/thanks.html"/>
    </menu>

    <menu name="For Contributors" inherit="top" img="img/glyphicons/pencil.png">
      <item name="Building Log4j from Source" href="/build.html"/>
      <item name="Guidelines" href="/guidelines.html"/>
      <item name="Style Guide" href="/javastyle.html"/>
    </menu>

    <menu name="Manual" inherit="top" img="img/glyphicons/book.png">
      <item name="Introduction" href="/manual/index.html"/>
      <item name="Architecture" href="/manual/architecture.html"/>
      <item name="Log4j 1.x Compatibility" href="manual/compatibility.html"/>
      <item name="Log4j 1.x Migration" href="manual/migration.html"/>

      <item name="Java API" href="/manual/api.html" collapse="true">
        <item name="Log Builder" href="manual/logbuilder.html"/>
        <item name="Flow Tracing" href="manual/flowtracing.html"/>
        <item name="Markers" href="manual/markers.html"/>
        <item name="Event Logging" href="/manual/eventlogging.html"/>
        <item name="Messages" href="/manual/messages.html"/>
        <item name="ThreadContext" href="/manual/thread-context.html"/>
      </item>

      <item name="Scala API" href="/manual/scala-api.html"/>

      <item name="Configuration" href="/manual/configuration.html" collapse="true">
        <item name="Automatic Configuration" href="/manual/configuration.html#AutomaticConfiguration"/>
        <item name="Additivity" href="/manual/configuration.html#Additivity"/>
        <item name="Automatic Reconfiguration" href="/manual/configuration.html#AutomaticReconfiguration"/>
        <item name="Chainsaw Support" href="/manual/configuration.html#ChainsawSupport"/>
        <item name="Configuration Syntax" href="/manual/configuration.html#ConfigurationSyntax" />
        <item name="XML Syntax" href="/manual/configuration.html#XML"/>
        <item name="JSON Syntax" href="/manual/configuration.html#JSON"/>
        <item name="YAML Syntax" href="/manual/configuration.html#YAML"/>
        <item name="Properties Syntax" href="/manual/configuration.html#Properties"/>
        <item name="Configuring Loggers" href="/manual/configuration.html#Loggers"/>
        <item name="Configuring Appenders" href="/manual/configuration.html#Appenders"/>
        <item name="Configuring Filters" href="/manual/configuration.html#Filters"/>
        <item name="Property Substitution" href="/manual/configuration.html#PropertySubstitution"/>
        <item name="Lookup Variables" href="/manual/configuration.html#RuntimeLookup"/>
        <item name="Scripts" href="/manual/configuration.html#Scripts"/>
        <item name="XInclude" href="/manual/configuration.html#XInclude"/>
        <item name="Composite Configurations" href="/manual/configuration.html#CompositeConfiguration"/>
        <item name="Status Messages" href="/manual/configuration.html#StatusMessages"/>
        <item name="Unit Testing in Maven" href="/manual/configuration.html#UnitTestingInMaven"/>
        <item name="System Properties" href="/manual/configuration.html#SystemProperties"/>
      </item>

      <item name="Usage" href="/manual/usage.html" collapse="true">
        <item name="Static vs non-Static Loggers"/>
        <item name="Logger Name vs Class Name"/>
        <item name="Logging in the Cloud" href="/manual/cloud.html"/>
      </item>

      <item name="Web Applications and JSPs" href="/manual/webapp.html" collapse="true">
        <item name="Servlet 3.0 and Newer" href="/manual/webapp.html#Servlet-3.0" />
        <item name="Servlet 2.5" href="/manual/webapp.html#Servlet-2.5" />
        <item name="Context Parameters" href="/manual/webapp.html#ContextParams" />
        <item name="Configuration Lookups" href="/manual/webapp.html#WebLookup" />
        <item name="JavaServer Pages Logging" href="/manual/webapp.html#JspLogging" />
        <item name="Asynchronous Requests" href="/manual/webapp.html#Async" />
      </item>

      <item name="Lookups" href="/manual/lookups.html" collapse="true">
        <item name="Context Map" href="/manual/lookups.html#ContextMapLookup"/>
        <item name="Date" href="/manual/lookups.html#DateLookup"/>
        <item name="Docker" href="manual/lookups.html#DockerLookup"/>
        <item name="Environment" href="/manual/lookups.html#EnvironmentLookup"/>
        <item name="Event" href="/manual/lookups.html#EventLookup"/>
        <item name="Java" href="/manual/lookups.html#JavaLookup"/>
        <item name="JNDI" href="/manual/lookups.html#JndiLookup"/>
        <item name="JVM Arguments" href="/manual/lookups.html#JmxRuntimeInputArgumentsLookup"/>
        <item name="Kubernetes" href="/manual/lookups.html#KubernetesLookup"/>
        <item name="Log4j Config" href="/manual/lookups.html#Log4jConfigLookup"/>
        <item name="Lower" href="/manual/lookups.html#LowerLookup"/>
        <item name="Main Arguments" href="/manual/lookups.html#AppMainArgsLookup"/>
        <item name="Map" href="/manual/lookups.html#MapLookup"/>
        <item name="Spring" href="/manual/lookups.html#SpringLookup"/>
        <item name="Structured Data" href="/manual/lookups.html#StructuredDataLookup"/>
        <item name="System Properties" href="/manual/lookups.html#SystemPropertiesLookup"/>
        <item name="Upper" href="/manual/lookups.html#UpperLookup"/>
        <item name="Web" href="/manual/lookups.html#WebLookup"/>
      </item>

      <item name="Appenders" href="/manual/appenders.html" collapse="true">
        <item name="Async" href="/manual/appenders.html#AsyncAppender"/>
        <item name="Cassandra" href="/manual/appenders.html#CassandraAppender"/>
        <item name="Console" href="/manual/appenders.html#ConsoleAppender"/>
        <item name="Failover" href="/manual/appenders.html#FailoverAppender"/>
        <item name="File" href="/manual/appenders.html#FileAppender"/>
        <item name="Flume" href="/manual/appenders.html#FlumeAppender"/>
        <item name="JDBC" href="/manual/appenders.html#JDBCAppender"/>
        <item name="JMS" href="/manual/appenders.html#JMSAppender"/>
        <item name="JPA" href="/manual/appenders.html#JPAAppender"/>
        <item name="HTTP" href="/manual/appenders.html#HttpAppender"/>
        <item name="Kafka" href="/manual/appenders.html#KafkaAppender"/>
        <item name="Memory Mapped File" href="/manual/appenders.html#MemoryMappedFileAppender"/>
        <item name="NoSQL" href="/manual/appenders.html#NoSQLAppender"/>
        <item name="NoSQL for MongoDB" href="/manual/appenders.html#NoSQLAppenderMongoDB"/>
        <item name="NoSQL for MongoDB 3" href="/manual/appenders.html#NoSQLAppenderMongoDB3"/>
        <item name="NoSQL for MongoDB 4" href="/manual/appenders.html#NoSQLAppenderMongoDB4"/>
        <item name="NoSQL for CouchDB" href="/manual/appenders.html#NoSQLAppenderCouchDB"/>
        <item name="Output Stream" href="/manual/appenders.html#OutputStreamAppender"/>
        <item name="Random Access File" href="/manual/appenders.html#RandomAccessFileAppender"/>
        <item name="Redis" href="/manual/appenders.html#RedisAppender"/>
        <item name="Rewrite" href="/manual/appenders.html#RewriteAppender"/>
        <item name="Rolling File" href="/manual/appenders.html#RollingFileAppender"/>
        <item name="Rolling Random Access File" href="/manual/appenders.html#RollingRandomAccessFileAppender"/>
        <item name="Routing" href="/manual/appenders.html#RoutingAppender"/>
        <item name="SMTP" href="/manual/appenders.html#SMTPAppender"/>
        <item name="ScriptAppenderSelector" href="/manual/appenders.html#ScriptAppenderSelector"/>
        <item name="Socket" href="/manual/appenders.html#SocketAppender"/>
        <item name="SSL" href="/manual/appenders.html#SSL"/>
        <item name="Syslog" href="/manual/appenders.html#SyslogAppender"/>
        <item name="ZeroMQ/JeroMQ" href="/manual/appenders.html#JeroMQAppender"/>
      </item>

      <item name="Layouts" href="/manual/layouts.html" collapse="true">
        <item name="CSV" href="/manual/layouts.html#CSVLayouts"/>
        <item name="GELF" href="/manual/layouts.html#GELFLayout"/>
        <item name="HTML" href="/manual/layouts.html#HTMLLayout"/>
        <item name="JSON" href="/manual/layouts.html#JSONLayout"/>
        <item name="JSON Template" href="/manual/json-template-layout.html"/>
        <item name="Pattern" href="/manual/layouts.html#PatternLayout"/>
        <item name="RFC-5424" href="/manual/layouts.html#RFC5424Layout"/>
        <item name="Serialized" href="/manual/layouts.html#SerializedLayout"/>
        <item name="Syslog" href="/manual/layouts.html#SyslogLayout"/>
        <item name="XML" href="/manual/layouts.html#XMLLayout"/>
        <item name="YAML" href="/manual/layouts.html#YamlLayout"/>
        <item name="Location Information" href="/manual/layouts.html#LocationInformation"/>
      </item>

      <item name="Filters" href="/manual/filters.html" collapse="true">
        <item name="Burst" href="/manual/filters.html#BurstFilter"/>
        <item name="Composite Filter" href="/manual/filters.html#CompositeFilter"/>
        <item name="Dynamic Threshold" href="/manual/filters.html#DynamicThresholdFilter"/>
        <item name="Map" href="/manual/filters.html#MapFilter"/>
        <item name="Marker" href="/manual/filters.html#MarkerFilter"/>
        <item name="Regex" href="/manual/filters.html#RegexFilter"/>
        <item name="Script" href="/manual/filters.html#Script"/>
        <item name="Structured Data" href="/manual/filters.html#StructuredDataFilter"/>
        <item name="Thread Context Map" href="/manual/filters.html#ThreadContextMapFilter"/>
        <item name="Threshold" href="/manual/filters.html#ThresholdFilter"/>
        <item name="Time" href="/manual/filters.html#TimeFilter"/>
      </item>

      <item name="Async Loggers" href="/manual/async.html" collapse="true">
        <item name="Trade-offs" href="/manual/async.html#Trade-offs"/>
        <item name="All Loggers Async" href="/manual/async.html#AllAsync"/>
        <item name="Mixed Sync &amp; Async" href="/manual/async.html#MixedSync-Async"/>
        <item name="Location" href="/manual/async.html#Location"/>
        <item name="Performance" href="/manual/async.html#Performance"/>
        <item name="Under The Hood" href="/manual/async.html#UnderTheHood"/>
      </item>

      <item name="Garbage-free Logging" href="/manual/garbagefree.html" collapse="true">
        <item name="Configuration" href="/manual/garbagefree.html#Config"/>
        <item name="Supported Appenders" href="/manual/garbagefree.html#Appenders"/>
        <item name="Supported Layouts" href="/manual/garbagefree.html#Layouts"/>
        <item name="Supported Filters" href="/manual/garbagefree.html#Filters"/>
        <item name="API Changes" href="/manual/garbagefree.html#api"/>
        <item name="Impact on Application Code" href="/manual/garbagefree.html#codeImpact"/>
        <item name="Performance" href="/manual/garbagefree.html#Performance"/>
        <item name="Under the Hood" href="/manual/garbagefree.html#UnderTheHood"/>
      </item>

      <item name="JMX" href="/manual/jmx.html"/>
      <item name="Logging Separation" href="/manual/logsep.html"/>

      <item name="Extending Log4j" href="/manual/extending.html" collapse="true">
        <item name="LoggerContextFactory" href="/manual/extending.html#LoggerContextFactory"/>
        <item name="ContextSelector" href="/manual/extending.html#ContextSelector"/>
        <item name="ConfigurationFactory" href="/manual/extending.html#ConfigurationFactory"/>
        <item name="LoggerConfig" href="/manual/extending.html#LoggerConfig"/>
        <item name="LogEventFactory" href="/manual/extending.html#LogEventFactory"/>
        <item name="MessageFactory" href="/manual/extending.html#MessageFactory"/>
        <item name="Lookups" href="/manual/extending.html#Lookups"/>
        <item name="Filters" href="/manual/extending.html#Filters"/>
        <item name="Appenders" href="/manual/extending.html#Appenders"/>
        <item name="Layouts" href="/manual/extending.html#Layouts"/>
        <item name="PatternConverters" href="/manual/extending.html#PatternConverters"/>
        <item name="Plugin Builders" href="/manual/extending.html#Plugin_Builders"/>
        <item name="Custom ContextDataInjector" href="/manual/extending.html#Custom_ContextDataInjector"/>
        <item name="Custom Plugins" href="/manual/extending.html#Custom_Plugins"/>
      </item>

      <item name="Plugins" href="/manual/plugins.html" collapse="true">
        <item name="Core" href="/manual/plugins.html#Core"/>
        <item name="Converters" href="/manual/plugins.html#Converters"/>
        <item name="Key Providers" href="/manual/plugins.html#KeyProviders"/>
        <item name="Lookups" href="/manual/plugins.html#Lookups"/>
        <item name="Type Converters" href="/manual/plugins.html#TypeConverters"/>
        <item name="Developer Notes" href="/manual/plugins.html#DeveloperNotes"/>
      </item>

      <item name="Programmatic Log4j Configuration" href="/manual/customconfig.html" collapse="true">
        <item name="ConfigurationBuilder API" href="/manual/customconfig.html#ConfigurationBuilder"/>
        <item name="Understanding ConfigurationFactory" href="/manual/customconfig.html#ConfigurationFactory"/>
        <item name="Example" href="/manual/customconfig.html#Example"/>
        <item name="Using Configurator" href="/manual/customconfig.html#Configurator"/>
        <item name="Config File and Code" href="/manual/customconfig.html#Hybrid"/>
        <item name="After Initialization" href="/manual/customconfig.html#AddingToCurrent"/>
        <item name="Appending to Writers &amp; OutputStreams" href="/manual/customconfig.html#AppendingToWritersAndOutputStreams"/>
      </item>

      <item name="Custom Log Levels" href="/manual/customloglevels.html" collapse="true">
        <item name="In Code" href="/manual/customloglevels.html#DefiningLevelsInCode"/>
        <item name="In Configuration" href="/manual/customloglevels.html#DefiningLevelsInConfiguration"/>
        <item name="Adding or Replacing Levels" href="/manual/customloglevels.html#AddingOrReplacingLevels"/>
        <item name="Custom Loggers" href="/manual/customloglevels.html#CustomLoggers"/>
        <item name="Custom Logger Example" href="/manual/customloglevels.html#ExampleUsage"/>
        <item name="Code Generation Tool" href="/manual/customloglevels.html#CodeGen"/>
      </item>

    </menu>

    <menu name="Related Projects" inherit="top" img="img/glyphicons/tag.png">
      <item name="Log4j-Scala" href="http://logging.apache.org/log4j/scala/index.html"/>
    </menu>

    <menu name="Legacy" inherit="top" img="img/glyphicons/link.png">
      <item name="Log4j 1.2 - End of Life" href="http://logging.apache.org/log4j/1.2/"/>
      <item name="Log4j 2.3 - Java 6" href="http://logging.apache.org/log4j/log4j-2.3/"/>
      <item name="Log4j 2.12.1 - Java 7" href="http://logging.apache.org/log4j/log4j-2.12.1/"/>
    </menu>

    <menu name="Components" inherit="top" img="img/glyphicons/cog.png">
      <item name="API" href="log4j-api/index.html"/>
      <item name="Implementation" href="log4j-core/index.html"/>
      <item name="Commons Logging Bridge" href="log4j-jcl/index.html"/>
      <item name="Log4j 1.2 API" href="log4j-1.2-api/index.html"/>
      <item name="SLF4J Binding" href="log4j-slf4j-impl/index.html"/>
      <item name="JUL Adapter" href="log4j-jul/index.html"/>
      <item name="JDK Platform Logger" href="log4j-jpl/index.html"/>
      <item name="Log4j 2 to SLF4J Adapter" href="log4j-to-slf4j/index.html"/>
      <item name="Apache Flume Appender" href="log4j-flume-ng/index.html"/>
      <item name="Log4j Tag Library" href="log4j-taglib/index.html"/>
      <item name="Log4j JMX GUI" href="log4j-jmx-gui/index.html"/>
      <item name="Log4j Web Application Support" href="log4j-web/index.html"/>
      <item name="Log4j Application Server Integration" href="log4j-appserver/index.html"/>
      <item name="Log4j CouchDB appender" href="log4j-couchdb/index.html"/>
      <item name="Log4j MongoDB3 appender" href="log4j-mongodb3/index.html"/>
      <item name="Log4j MongoDB4 appender" href="log4j-mongodb4/index.html"/>
      <item name="Log4j Cassandra appender" href="log4j-cassandra/index.html"/>
      <item name="Log4j IO Streams" href="log4j-iostreams/index.html"/>
      <item name="Log4j Liquibase Binding" href="log4j-liquibase/index.html"/>
      <item name="Log4j Docker Support" href="log4j-docker/index.html"/>
      <item name="Lob4j Kubernetes Support" href="log4j-kubernetes/index.html"/>
      <item name="Log4j Spring Cloud Config Client" href="log4j-spring-cloud-config/log4j-spring-cloud-config-client/index.html"/>
    </menu>

    <menu name="Project Information" img="img/glyphicons/info.png">
      <item name="Dependency Convergence" href="/dependency-convergence.html" />
      <item name="Dependency Management" href="/dependency-management.html" />
      <item name="Project Team" href="/team-list.html" />
      <item name="Mailing Lists" href="/mail-lists.html" />
      <item name="Issue Tracking" href="/issue-tracking.html" />
      <item name="Project License" href="/license.html" />
      <item name="Source Repository" href="/source-repository.html" />
      <item name="Project Summary" href="/project-summary.html" />
    </menu>

    <menu name="Project Reports" img="img/glyphicons/layers.png">
      <item name="Changes Report" href="/changes-report.html" />
      <item name="JIRA Report" href="/jira-report.html" />
      <item name="RAT Report" href="/rat-report.html" />
    </menu>
    <footer><![CDATA[<p align="center">Copyright &copy; ${project.inceptionYear}-${currentYear} <a class="external" href="http://www.apache.org">The Apache Software Foundation</a>. All Rights Reserved.<br>
      Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, and the Apache Logging project logo are trademarks of The Apache Software Foundation.</p>]]>
    </footer>
  </body>
</project>
