title: logback error while server startup
body: <p>The following is my logback file</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  
  &lt;!-- For assistance related to logback-translator or configuration --&gt;
  &lt;!-- files in general, please contact the logback user mailing list --&gt;
  &lt;!-- at http://www.qos.ch/mailman/listinfo/logback-user --&gt;
  &lt;!-- --&gt;
  &lt;!-- For professional support please see --&gt;
  &lt;!-- http://www.qos.ch/shop/products/professionalSupport --&gt;
  &lt;!-- --&gt;
  &lt;configuration&gt;
  
      &lt;appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender"&gt;
      &lt;!-- in the absence of the class attribute, it is assumed that the
           desired discriminator type is
           ch.qos.logback.classic.sift.MDCBasedDiscriminator --&gt;
          &lt;discriminator&gt;
              &lt;key&gt;type&lt;/key&gt;
              &lt;defaultValue&gt;normal&lt;/defaultValue&gt;
          &lt;/discriminator&gt;
          &lt;sift&gt;
              &lt;appender name="STDOUT-${type}" class="ch.qos.logback.core.ConsoleAppender"&gt;
                  &lt;file&gt;${catalina.base}/logs/${type}.log&lt;/file&gt;
                  &lt;layout class="ch.qos.logback.classic.PatternLayout"&gt;
                      &lt;Pattern&gt;%d{yyyy-MM-dd_HH:mm:ss.SSS} %-5level %logger{36} - %msg%n
                      &lt;/Pattern&gt;
                  &lt;/layout&gt;
              &lt;/appender&gt;
              &lt;appender name="FILE-${type}"
                  class="ch.qos.logback.core.rolling.RollingFileAppender"&gt;
                  &lt;file&gt;${catalina.base}/logs/${type}.log&lt;/file&gt;
                  &lt;Encoding&gt;UTF-8&lt;/Encoding&gt;
                  &lt;!-- Current assumption: If we don't provide log file name then default will be used i.e.
                       catalina.out --&gt;
                  &lt;!-- &lt;file&gt;${catalina.base}/logs/ee.log&lt;/file&gt; --&gt;
                  &lt;Append&gt;true&lt;/Append&gt;
                  &lt;layout class="ch.qos.logback.classic.PatternLayout"&gt;
                      &lt;Pattern&gt;%d{yyyy-MM-dd_HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n&lt;/Pattern&gt;
                  &lt;/layout&gt;
  
                  &lt;rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"&gt;
                      &lt;FileNamePattern&gt;${catalina.base}/logs/${type}/ee.%i.log.zip
                      &lt;/FileNamePattern&gt;
                      &lt;MinIndex&gt;1&lt;/MinIndex&gt;
                      &lt;MaxIndex&gt;10&lt;/MaxIndex&gt;
                  &lt;/rollingPolicy&gt;
  
                  &lt;triggeringPolicy
                      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"&gt;
                      &lt;MaxFileSize&gt;200MB&lt;/MaxFileSize&gt;
                  &lt;/triggeringPolicy&gt;
  
              &lt;/appender&gt;
          &lt;/sift&gt;
      &lt;/appender&gt;
  
      &lt;appender name="FILE-HIBERNATE"
          class="ch.qos.logback.core.rolling.RollingFileAppender"&gt;
          &lt;file&gt;${catalina.base}/logs/hibernate.log&lt;/file&gt;
          &lt;Encoding&gt;UTF-8&lt;/Encoding&gt;
          &lt;!-- Current assumption: If we don't provide log file name then default will be used i.e.
               catalina.out --&gt;
          &lt;!-- &lt;file&gt;${catalina.base}/logs/ee.log&lt;/file&gt; --&gt;
          &lt;Append&gt;true&lt;/Append&gt;
          &lt;layout class="ch.qos.logback.classic.PatternLayout"&gt;
              &lt;Pattern&gt;%d{yyyy-MM-dd_HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n&lt;/Pattern&gt;
          &lt;/layout&gt;
  
          &lt;rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"&gt;
              &lt;FileNamePattern&gt;${catalina.base}/logs/hibernate/ee.%i.log.zip
              &lt;/FileNamePattern&gt;
              &lt;MinIndex&gt;1&lt;/MinIndex&gt;
              &lt;MaxIndex&gt;10&lt;/MaxIndex&gt;
          &lt;/rollingPolicy&gt;
  
          &lt;triggeringPolicy
              class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"&gt;
              &lt;MaxFileSize&gt;200MB&lt;/MaxFileSize&gt;
          &lt;/triggeringPolicy&gt;
  
      &lt;/appender&gt;
  
      &lt;appender name="FILE-EMAIL"
          class="ch.qos.logback.core.rolling.RollingFileAppender"&gt;
          &lt;file&gt;${catalina.base}/logs/email.log&lt;/file&gt;
          &lt;encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"&gt;
              &lt;Pattern&gt;
                  %d{yyyy-MM-dd HH:mm:ss} - %msg%n
              &lt;/Pattern&gt;
          &lt;/encoder&gt;
          &lt;Append&gt;true&lt;/Append&gt;
          &lt;rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"&gt;
              &lt;FileNamePattern&gt;${catalina.base}/logs/email/email_%d{yyyy-MM-dd}.zip
              &lt;/FileNamePattern&gt;
              &lt;timeBasedFileNamingAndTriggeringPolicy
                  class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"&gt;
                  &lt;maxFileSize&gt;1KB&lt;/maxFileSize&gt;
              &lt;/timeBasedFileNamingAndTriggeringPolicy&gt;
          &lt;/rollingPolicy&gt;
          &lt;layout class="ch.qos.logback.classic.PatternLayout"&gt;
              &lt;Pattern&gt;%d{yyyy-MM-dd_HH:mm:ss.SSS} [%thread] %-5level %logger{36} -
                  %msg%n&lt;/Pattern&gt;
          &lt;/layout&gt;
      &lt;/appender&gt;
  
  
      &lt;appender name="EMAIL" class="ch.qos.logback.classic.net.SMTPAppender"&gt;
          &lt;filter class="com.expertly.common.logs.filters.EmailLogFilter"&gt;
              &lt;excludedExceptionClassName&gt;org.springframework.security.access.AccessDeniedException&lt;/excludedExceptionClassName&gt;
              &lt;excludedExceptionClassName&gt;com.expertexecution.ee.common.server.filters.RequestResponseLoggingFilter&lt;/excludedExceptionClassName&gt;
          &lt;/filter&gt;
          &lt;smtpHost&gt;localhost&lt;/smtpHost&gt;
          &lt;to&gt;errors@expertly.com&lt;/to&gt;
          &lt;smtpPort&gt;25&lt;/smtpPort&gt;
          &lt;STARTTLS&gt;false&lt;/STARTTLS&gt;
          &lt;from&gt;error-notifications@webintensive.expertexecution.com&lt;/from&gt;
          &lt;subject&gt;Expertly: Error&lt;/subject&gt;
          &lt;layout class="ch.qos.logback.classic.PatternLayout"&gt;
              &lt;pattern&gt;%date %-5level %logger{35} -%n %message%n&lt;/pattern&gt;
          &lt;/layout&gt;
      &lt;/appender&gt;
  
      &lt;root level="ERROR"&gt;
          &lt;appender-ref ref="EMAIL" /&gt;
      &lt;/root&gt;
  
      &lt;logger name="org.hibernate.type" level="INFO" additivity="false"&gt;
          &lt;appender-ref ref="FILE-HIBERNATE" /&gt;
      &lt;/logger&gt;
      &lt;logger name="org.hibernate" level="INFO" additivity="false"&gt;
          &lt;appender-ref ref="FILE-HIBERNATE" /&gt;
      &lt;/logger&gt;
      &lt;!-- &lt;logger name="com.expertexecution.ee.common.server.email" level="DEBUG" additivity="false"&gt;
          &lt;appender-ref ref="FILE-EMAIL" /&gt;
      &lt;/logger&gt; --&gt;
  
      &lt;root level="DEBUG"&gt;
          &lt;appender-ref ref="SIFT" /&gt;
  &lt;!--        &lt;appender-ref ref="FILE" /&gt; --&gt;
  &lt;!--        &lt;appender-ref ref="STDOUT" /&gt; --&gt;
  &lt;!--        &lt;appender-ref ref="EMAIL" /&gt; --&gt; 
      &lt;/root&gt;
  
  &lt;/configuration&gt;
  </code></pre>
  
  <p>I am getting following error while I start my server. It gives array index outof bound error. Not able to understand what is the issue.</p>
  
  <pre><code> 15:36:55,735 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
      15:36:55,735 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
      15:36:55,735 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/home/anoop/EE%20Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/trunk/WEB-INF/classes/logback.xml]
      15:36:55,796 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
      15:36:55,797 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.sift.SiftingAppender]
      15:36:55,800 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SIFT]
      15:36:55,821 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.sift.MDCBasedDiscriminator] for [discriminator] property
      15:36:55,827 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
      15:36:55,830 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE-HIBERNATE]
      15:36:55,841 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@59:13 - no applicable action for [Encoding], current pattern is [[configuration][appender][Encoding]]
      15:36:55,876 |-WARN in ch.qos.logback.core.rolling.RollingFileAppender[FILE-HIBERNATE] - This appender no longer admits a layout as a sub-component, set an encoder instead.
      15:36:55,876 |-WARN in ch.qos.logback.core.rolling.RollingFileAppender[FILE-HIBERNATE] - To ensure compatibility, wrapping your layout in LayoutWrappingEncoder.
      15:36:55,876 |-WARN in ch.qos.logback.core.rolling.RollingFileAppender[FILE-HIBERNATE] - See also http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
      15:36:55,885 |-INFO in ch.qos.logback.core.rolling.FixedWindowRollingPolicy@74648f3f - Will use zip compression
      15:36:55,893 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE-HIBERNATE] - Active log file name: /home/anoop/EE Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/logs/hibernate.log
      15:36:55,893 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE-HIBERNATE] - File property is set to [/home/anoop/EE Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/logs/hibernate.log]
      15:36:55,894 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
      15:36:55,894 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE-EMAIL]
      15:36:55,916 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy - Will use zip compression
      15:36:55,916 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy - Will use the pattern /home/anoop/EE Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/logs/email/email_%d{yyyy-MM-dd} for the active file
      15:36:55,919 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@75f8accb - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/anoop/EE Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/logs/email/email_%d{yyyy-MM-dd}.zip'.
      15:36:55,919 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@75f8accb - Roll-over at midnight.
      15:36:55,919 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@75f8accb - Setting initial period to Wed Jun 03 14:30:20 IST 2015
      15:36:55,921 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@98:19 - RuntimeException in Action for tag [rollingPolicy] java.lang.IndexOutOfBoundsException: No group 1
          at java.lang.IndexOutOfBoundsException: No group 1
          at  at java.util.regex.Matcher.group(Matcher.java:487)
          at  at ch.qos.logback.core.rolling.helper.FileFilterUtil.extractCounter(FileFilterUtil.java:109)
          at  at ch.qos.logback.core.rolling.helper.FileFilterUtil.findHighestCounter(FileFilterUtil.java:93)
          at  at ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP.computeCurrentPeriodsHighestCounterValue(SizeAndTimeBasedFNATP.java:65)
          at  at ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP.start(SizeAndTimeBasedFNATP.java:49)
          at  at ch.qos.logback.core.rolling.TimeBasedRollingPolicy.start(TimeBasedRollingPolicy.java:87)
          at  at ch.qos.logback.core.joran.action.NestedComplexPropertyIA.end(NestedComplexPropertyIA.java:167)
          at  at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:318)
          at  at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:197)
          at  at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:183)
          at  at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)
          at  at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:147)
          at  at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:133)
          at  at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:96)
          at  at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:55)
          at  at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:75)
          at  at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:148)
          at  at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
          at  at org.slf4j.impl.StaticLoggerBinder.&lt;clinit&gt;(StaticLoggerBinder.java:54)
          at  at org.slf4j.LoggerFactory.bind(LoggerFactory.java:128)
          at  at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)
          at  at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:279)
          at  at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:252)
          at  at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:156)
          at  at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:132)
          at  at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
          at  at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:282)
          at  at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
          at  at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4992)
          at  at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5490)
          at  at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
          at  at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1575)
          at  at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1565)
          at  at java.util.concurrent.FutureTask.run(FutureTask.java:262)
          at  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
          at  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
          at  at java.lang.Thread.run(Thread.java:745)
      15:36:55,921 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@99:56 - no applicable action for [layout], current pattern is [[configuration][appender][layout]]
      15:36:55,921 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@100:13 - no applicable action for [Pattern], current pattern is [[configuration][appender][layout][Pattern]]
      15:36:55,921 |-WARN in ch.qos.logback.core.rolling.RollingFileAppender[FILE-EMAIL] - No TriggeringPolicy was set for the RollingFileAppender named FILE-EMAIL
      15:36:55,921 |-WARN in ch.qos.logback.core.rolling.RollingFileAppender[FILE-EMAIL] - For more information, please visit http://logback.qos.ch/codes.html#rfa_no_tp
      15:36:55,921 |-WARN in ch.qos.logback.core.joran.action.AppenderAction - The object at the of the stack is not the appender named [FILE-EMAIL] pushed earlier.
      15:36:55,921 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.net.SMTPAppender]
      15:36:55,934 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [EMAIL]
      15:36:55,962 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to ERROR
      15:36:55,962 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [EMAIL] to Logger[ROOT]
      15:36:55,963 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate.type] to INFO
      15:36:55,963 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.hibernate.type] to false
      15:36:55,963 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE-HIBERNATE] to Logger[org.hibernate.type]
      15:36:55,963 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate] to INFO
      15:36:55,963 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.hibernate] to false
      15:36:55,963 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE-HIBERNATE] to Logger[org.hibernate]
      15:36:55,963 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to DEBUG
      15:36:55,963 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SIFT] to Logger[ROOT]
      15:36:55,963 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
      15:36:55,964 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@52c481c5 - Registering current configuration as safe fallback point
  </code></pre>
  
  <p>can anyone please help me fixing it?</p>