Uploaded image for project: 'Jira Service Management Data Center'
  1. Jira Service Management Data Center
  2. JSDSERVER-12452

JSM >= 5.5 is not writing ServiceDesk and Insight/Assets logs in Windows

      Issue Summary

      JSM >= 5.5 is not writing ServiceDesk and Insight/Assets logs in Windows. Probably related to updates made in log4j2.

      This is reproducible on Data Center: (yes) 

      Steps to Reproduce

      1. Deploy JSM 5.5 or 5.6 in Windows (can be also an update)
      2. Perform any action in JSM or Insight that would be logged
        1. Insight example: export object schema.
        2. JSM example: Edit something in a project's SLA
      3. Logs aren't updated.

      Expected Results

      The logs atlassian-servicedesk.log and the Insight logs should be populated as they were up to JSM 5.4

      Actual Results

      The atlassian-servicedesk.log and the Insight logs aren't updated at all. The following stack trace was found at the startup and may be related:

      03-Mar-2023 08:35:00.486 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.70]
      ERROR StatusLogger Unable to create custom ContextSelector. Falling back to default.
       java.lang.ClassNotFoundException: org.apache.logging.log4j.core.selector.BasicContextSelector -Dlog4j2.disableJmx=true -Dlog4j2.garbagefree.threadContextMap=true -Dlog4j2.isWebapp=false -Djava.awt.headless=true
              at java.base/java.net.URLClassLoader.findClass(Unknown Source)
              at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
              at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
              at java.base/java.lang.Class.forName0(Native Method)
              at java.base/java.lang.Class.forName(Unknown Source)
              at org.apache.logging.log4j.util.LoaderUtil.loadClass(LoaderUtil.java:173)
              at org.apache.logging.log4j.util.LoaderUtil.newInstanceOf(LoaderUtil.java:211)
              at org.apache.logging.log4j.util.LoaderUtil.newCheckedInstanceOf(LoaderUtil.java:231)
              at org.apache.logging.log4j.util.LoaderUtil.newCheckedInstanceOfProperty(LoaderUtil.java:255)
              at org.apache.logging.log4j.core.util.Loader.newCheckedInstanceOfProperty(Loader.java:338)
              at org.apache.logging.log4j.core.impl.Log4jContextFactory.createContextSelector(Log4jContextFactory.java:100)
              at org.apache.logging.log4j.core.impl.Log4jContextFactory.<init>(Log4jContextFactory.java:61)
              at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
              at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
              at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
              at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source)
              at java.base/java.lang.Class.newInstance(Unknown Source)
              at org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:95)
              at com.atlassian.logging.log4j.juli.JuliToLog4jHandler.publish(JuliToLog4jHandler.java:45)
              at java.logging/java.util.logging.Logger.log(Unknown Source)
              at java.logging/java.util.logging.Logger.doLog(Unknown Source)
              at java.logging/java.util.logging.Logger.logp(Unknown Source)
              at org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:173)
              at org.apache.juli.logging.DirectJDKLog.info(DirectJDKLog.java:116)
              at org.apache.jasper.servlet.TldScanner.scanJars(TldScanner.java:264)
              at org.apache.jasper.servlet.TldScanner.scan(TldScanner.java:104)
              at org.apache.jasper.servlet.JasperInitializer.onStartup(JasperInitializer.java:83)
              at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5211)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393)
              at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1383)
              at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
              at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
              at java.base/java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
              at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916)
              at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393)
              at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1383)
              at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
              at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
              at java.base/java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
              at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916)
              at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.StandardService.startInternal(StandardService.java:430)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
              at java.base/java.lang.reflect.Method.invoke(Unknown Source)
              at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:347)
              at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:478) 

      Workaround

      https://confluence.atlassian.com/adminjiraserver/setting-properties-and-options-on-startup-938847831.html

      Follow the "Windows Service" steps here, but looks like they're outdated for the latest settings, so please use:

      tomcat9w.exe //ES//JIRA 

      The first line of the "Java options" are all on one line, this is what is causing the issue, they all need to be on their own line, their separator is the "-D", so seperate each of those options across multiple lines. Here's an example of the start of what the config should look like after you've made the change.

      -Dlog4j2.contextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector
      -Dlog4j2.disableJmx=true
      -Dlog4j2.garbagefree.threadContextMap=true
      -Dlog4j2.isWebapp=false
      -Djava.awt.headless=true
      -Datlassian.standalone=JIRA 

      Then restart Jira via Windows services.msc.

      Alternatively, use the start-up.bat file to start Jira instead of running Jira as a service.

          Form Name

            [JSDSERVER-12452] JSM >= 5.5 is not writing ServiceDesk and Insight/Assets logs in Windows

            We're working with the Jira Core team on a permanent fix for this bug.

            Currently blocked while we wait, but assured a fix to be complete soon. 

            Aiming to have resolved in time for the 5.12 LTS.

            Alex Cooksey added a comment - We're working with the Jira Core team on a permanent fix for this bug. Currently blocked while we wait, but assured a fix to be complete soon.  Aiming to have resolved in time for the 5.12 LTS.

              da0dd4439f59 Alex Cooksey
              7e87200788f9 Hugo Fernandes
              Affected customers:
              5 This affects my team
              Watchers:
              10 Start watching this issue

                Created:
                Updated:
                Resolved: