Logviewer seems pointing to wrong files

  • Platform information:
    • Hardware: Raspberry 3b
    • OS: Linux openHABianPi 4.19.66-v7+ #1253
    • openHAB version: 3.0
    • openHABian configuration tool version: [stable]v1.6.1-1021(01d4e59)
    • Java Version: 11.0.9 2020-10-20 LTS

After updating from OH 2.5 to OH 3 the LogViewer doesn’t show the current log entries. I tried to solve it by reinstalling LogViewer via openHABian configuration tool (20 (Optional Components) --> 21 (LogViewer)). My guess is that this messed up even more.
From the thread ([SOLVED] Frontail Log Viewer not looking at correct log files) I found out the relevant paths. Unfortunately I lack the knowledge about the interaction between Karaf, Log4J and frontail to solve the problem.

/etc/systemd/system/frontail.service

ExecStart=/usr/lib/node_modules/frontail/bin/frontail --ui-highlight --ui-highlight-preset /usr/lib/node_modules/frontail/preset/openhab.json -t openhab -l 2000 -n 200 /var/log/openhab2/openhab.log /var/log/openhab2/events.log`

/var/lib/openhab2/etc/org.ops4j.pax.logging.cfg:

# Event log appender
log4j2.appender.event.type = RollingRandomAccessFile
log4j2.appender.event.name = EVENT
log4j2.appender.event.fileName = ${openhab.logdir}/events.log
log4j2.appender.event.filePattern = ${openhab.logdir}/events.log.%i
log4j2.appender.event.immediateFlush = true
log4j2.appender.event.append = true
log4j2.appender.event.layout.type = PatternLayout
log4j2.appender.event.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%-26.26c] - %m%n
log4j2.appender.event.policies.type = Policies
log4j2.appender.event.policies.size.type = SizeBasedTriggeringPolicy
log4j2.appender.event.policies.size.size = 16MB

# Audit file appender
log4j2.appender.audit.type = RollingRandomAccessFile
log4j2.appender.audit.name = AUDIT
log4j2.appender.audit.fileName = ${openhab.logdir}/audit.log
log4j2.appender.audit.filePattern = ${openhab.logdir}/audit.log.%i
log4j2.appender.audit.append = true
log4j2.appender.audit.layout.type = PatternLayout
log4j2.appender.audit.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5.5p] [%-36.36c] - %m%n
log4j2.appender.audit.policies.type = Policies
log4j2.appender.audit.policies.size.type = SizeBasedTriggeringPolicy
log4j2.appender.audit.policies.size.size = 8MB

# OSGi appender
log4j2.appender.osgi.type = PaxOsgi
log4j2.appender.osgi.name = OSGI
log4j2.appender.osgi.filter = *
log4j2.logger.org_openhab_binding_zwave.level = INFO
log4j2.logger.org_openhab_binding_zwave.name = org.openhab.binding.zwave
log4j2.logger.org_apache_sshd.level = WARN
log4j2.logger.org_apache_sshd.name = org.apache.sshd

In the meantime I got to know that with OH3 the openhab2 paths are probably no longer relevant.

/var/lib/openhab/etc/org.ops4j.pax.logging.cfg

org.ops4j.pax.logging.log4j2.config.file=${karaf.etc}/log4j2.xml

/var/lib/openhab/etc/log4j2.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?><Configuration>

    <Appenders>
            <!-- Console appender not used by default (see Root logger AppenderRefs) -->
            <Console name="STDOUT">
                    <PatternLayout pattern="%d{HH:mm:ss.SSS} [%-5.5p] [%-36.36c] - %m%n"/>
            </Console>

            <!-- Rolling file appender -->
            <RollingFile fileName="${sys:openhab.logdir}/openhab.log" filePattern="${sys:openhab.logdir}/openhab.log.%i" name="LOGFILE">
                    <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5.5p] [%-36.36c] - %m%n"/>
                    <Policies>
                            <OnStartupTriggeringPolicy/>
                            <SizeBasedTriggeringPolicy size="16 MB"/>
                    </Policies>
            </RollingFile>

            <!-- Event log appender -->
            <RollingRandomAccessFile fileName="${sys:openhab.logdir}/events.log" filePattern="${sys:openhab.logdir}/events.log.%i" name="EVENT">
                    <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5.5p] [%-36.36c] - %m%n"/>
                    <Policies>
                            <OnStartupTriggeringPolicy/>
                            <SizeBasedTriggeringPolicy size="16 MB"/>
                    </Policies>
            </RollingRandomAccessFile>

            <!-- Audit file appender -->
            <RollingRandomAccessFile fileName="${sys:openhab.logdir}/audit.log" filePattern="${sys:openhab.logdir}/audit.log.%i" name="AUDIT">
                    <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5.5p] [%-36.36c] - %m%n"/>
                    <Policies>
                            <OnStartupTriggeringPolicy/>
                            <SizeBasedTriggeringPolicy size="8 MB"/>
                    </Policies>
            </RollingRandomAccessFile>

            <!-- OSGi appender -->
            <PaxOsgi filter="*" name="OSGI"/>
    </Appenders>

    <Loggers>
            <!-- Root logger configuration -->
            <Root level="WARN">
                    <AppenderRef ref="LOGFILE"/>
                    <AppenderRef ref="OSGI"/>
            </Root>

            <!-- Karaf Shell logger -->
            <Logger level="OFF" name="org.apache.karaf.shell.support">
                    <AppenderRef ref="STDOUT"/>
            </Logger>

            <!-- Security audit logger -->
            <Logger additivity="false" level="INFO" name="org.apache.karaf.jaas.modules.audit">
                    <AppenderRef ref="AUDIT"/>
            </Logger>

            <!-- openHAB specific logger configuration -->

            <Logger level="INFO" name="org.openhab"/>

            <Logger level="ERROR" name="openhab.event.ItemStateEvent"/>
            <Logger level="ERROR" name="openhab.event.ItemAddedEvent"/>
            <Logger level="ERROR" name="openhab.event.ItemRemovedEvent"/>
            <Logger level="ERROR" name="openhab.event.ItemChannelLinkAddedEvent"/>
            <Logger level="ERROR" name="openhab.event.ItemChannelLinkRemovedEvent"/>
            <Logger level="ERROR" name="openhab.event.ThingStatusInfoEvent"/>
            <Logger level="ERROR" name="openhab.event.ThingAddedEvent"/>
            <Logger level="ERROR" name="openhab.event.ThingUpdatedEvent"/>
            <Logger level="ERROR" name="openhab.event.ThingRemovedEvent"/>
            <Logger level="ERROR" name="openhab.event.InboxUpdatedEvent"/>
            <Logger level="ERROR" name="openhab.event.RuleStatusInfoEvent"/>
            <Logger level="ERROR" name="openhab.event.RuleAddedEvent"/>
            <Logger level="ERROR" name="openhab.event.RuleRemovedEvent"/>
            <Logger level="ERROR" name="openhab.event.StartlevelEvent"/>
            <Logger level="ERROR" name="openhab.event.AddonEvent"/>

            <Logger additivity="false" level="INFO" name="openhab.event">
                    <AppenderRef ref="EVENT"/>
                    <AppenderRef ref="OSGI"/>
            </Logger>

            <Logger level="ERROR" name="javax.jmdns"/>
            <Logger level="ERROR" name="org.jupnp"/>

            <!-- This suppresses all Maven download issues from the log when doing feature installations -->
            <!-- as we are logging errors ourselves in a nicer way anyhow. -->
            <Logger level="ERROR" name="org.ops4j.pax.url.mvn.internal.AetherBasedResolver"/>

            <!-- Filters known issues of pax-web (issue link to be added here). -->
            <!-- Can be removed once the issues are resolved in an upcoming version. -->
            <Logger level="OFF" name="org.ops4j.pax.web.pax-web-runtime"/>

            <!-- Filters known issues of lsp4j, see -->
            <!-- https://github.com/eclipse/smarthome/issues/4639 -->
            <!-- https://github.com/eclipse/smarthome/issues/4629 -->
            <!-- https://github.com/eclipse/smarthome/issues/4643 -->
            <!-- Can be removed once the issues are resolved in an upcoming version. -->
            <Logger level="OFF" name="org.eclipse.lsp4j"/>

            <!-- Filters warnings for events that could not be delivered to a disconnected client. -->
            <Logger level="ERROR" name="org.apache.cxf.jaxrs.sse.SseEventSinkImpl"/>

            <!-- Filters known issues of KarServiceImpl, see -->
            <!-- https://github.com/openhab/openhab-distro/issues/519#issuecomment-351944506 -->
            <!-- Can be removed once the issues are resolved in an upcoming version. -->
            <Logger level="ERROR" name="org.apache.karaf.kar.internal.KarServiceImpl"/>

            <!-- Filters warnings about unavailable ciphers when JCE is not installed, see -->
            <!-- https://github.com/openhab/openhab-distro/issues/999 -->
            <Logger level="ERROR" name="org.apache.karaf.shell.ssh.SshUtils"/>

            <!-- Filters known issues of javax.mail, see -->
            <!-- https://github.com/openhab/openhab-addons/issues/5530 -->
            <Logger level="ERROR" name="javax.mail"/>

            <!-- Added by Karaf to prevent debug logging loops, see -->
            <!-- https://issues.apache.org/jira/browse/KARAF-5559 -->
            <Logger level="ERROR" name="org.apache.sshd"/>
    </Loggers>

/usr/lib/node_modules/frontail/preset/openhab.json

{
  "words": {
    "[ERROR]": "color: red;",
    "[WARN ]": "color: orange;",
    "[INFO ]": "color: green;",
    "Node is DEAD": "color: red;",
    "[GroupItemStateChangedEvent]": "color: #0026FF; font-weight: bold;",
    "[ItemStateChangedEvent     ]": "color: #0026FF;",
    "[vent.ItemStateChangedEvent]": "color: #0026FF;",
    "[ItemCommandEvent          ]": "color: #00137F;",
    "[ome.event.ItemCommandEvent]": "color: #00137F;",
    "[hingStatusInfoChangedEvent]": "color: #007F46;",
    "received command ON": "color: black;",
    "received command OFF": "color: black;",
    "received command": "color: black;"
  },
  "lines": {
    "/var/log/openhab2/openhab.log": "text-align: right; font-size: 0.8em; border-top: 2px solid #F8F8F8;",
    "/var/log/openhab2/events.log": "text-align: right; font-size: 0.8em; border-top: 2px solid #F8F8F8;",
    "ERROR": "background-color: #F3BFBF;",
    "model.script": "background-color: #A6CFFD; font-weight: bold;"
  }
}

Currently, neither in ‘/var/log/openhab/openhab.log’ nor in ‘/var/log/openhab2/openhab.log’ the current entries are written.
I can only see the current log with the Karaf Console (log:tail).
Can someone help me to correct the paths so that it works again?

In the meantime I recognised that I was on on older version of openhabian and updated it to [stable]v1.6.1-1059(010ded5).
Now the paths and the servicename in the /etc/systemd/system/frontail.service seems to be correct:

[Unit]
Description=Frontail openHAB instance, reachable at http://%H:9001
Documentation=https://github.com/mthenw/frontail
After=openhab.service
PartOf=openhab.service

[Service]
Type=simple
ExecStart=/usr/lib/node_modules/frontail/bin/frontail --ui-highlight --ui-highlight-preset /usr/lib/node_modules/frontail/preset/openhab.json -t openhab -l 2000 -n 200 /var/log/openhab/openhab.log /var/log/openhab/events.log
Restart=always
User=frontail
Group=openhab
Environment=PATH=/usr/bin/
Environment=NODE_ENV=production
WorkingDirectory=/usr/bin/

[Install]
WantedBy=multi-user.target

But unfortunately I still don’t see any current log entries in LogViewer. In the files ‘/var/log/openhab/openhab.log’ and ‘/var/log/openhab/events.log’ there are still no entries written.

Does anyone have any ideas?

I did a debug log and found java.lang.IllegalMonitorStateException: attempt to unlock read lock, not locked by current thread

openhab> log:display org.apache.felix.configadmin
12:24:31.148 [DEBUG] [org.apache.felix.configadmin         ] - getConfiguration(pid=org.ops4j.pax.logging, location=null)
12:24:31.161 [DEBUG] [org.apache.felix.configadmin         ] - Found cached configuration org.ops4j.pax.logging bound to mvn:org.ops4j.pax.logging/pax-logging-log4j2/1.11.2
12:24:31.234 [DEBUG] [org.apache.felix.configadmin         ] - update(properties={felix.fileinstall.filename=file:/var/lib/openhab/etc/org.ops4j.pax.logging.cfg, org.ops4j.pax.logging.log4j2.config.file=/var/lib/openhab/etc/log4j2.xml, service.pid=org.ops4j.pax.logging})
12:24:31.241 [DEBUG] [org.apache.felix.configadmin         ] - Updating config org.ops4j.pax.logging with {felix.fileinstall.filename=file:/var/lib/openhab/etc/org.ops4j.pax.logging.cfg, org.ops4j.pax.logging.log4j2.config.file=/var/lib/openhab/etc/log4j2.xml, service.pid=org.ops4j.pax.logging}
12:24:31.252 [DEBUG] [org.apache.felix.configadmin         ] - No SynchronousConfigurationListeners to send CM_UPDATED event to.
12:24:31.261 [DEBUG] [org.apache.felix.configadmin         ] - Scheduling task Fire ConfigurationEvent: pid=org.ops4j.pax.logging
12:24:31.266 [DEBUG] [org.apache.felix.configadmin         ] - Running task Fire ConfigurationEvent: pid=org.ops4j.pax.logging
12:24:31.266 [DEBUG] [org.apache.felix.configadmin         ] - Scheduling task Update: pid=org.ops4j.pax.logging
12:24:31.270 [DEBUG] [org.apache.felix.configadmin         ] - Sending CM_UPDATED event for org.ops4j.pax.logging to [org.osgi.service.cm.ConfigurationListener, id=127, bundle=46/mvn:org.apache.aries.jax.rs/org.apache.aries.jax.rs.whiteboard/1.0.9]
12:24:31.276 [DEBUG] [org.apache.felix.configadmin         ] - UpdateConfiguration(org.ops4j.pax.logging) scheduled
12:24:31.276 [DEBUG] [org.apache.felix.configadmin         ] - Running task Update: pid=org.ops4j.pax.logging
12:24:31.287 [DEBUG] [org.apache.felix.configadmin         ] - Updating configuration org.ops4j.pax.logging to revision #37
12:24:31.290 [DEBUG] [org.apache.felix.configadmin         ] - canReceive=true: bundle=mvn:org.ops4j.pax.logging/pax-logging-log4j2/1.11.2; configuration=mvn:org.ops4j.pax.logging/pax-logging-log4j2/1.11.2
12:24:31.281 [DEBUG] [org.apache.felix.configadmin         ] - Sending CM_UPDATED event for org.ops4j.pax.logging to [org.osgi.service.cm.ConfigurationListener, id=120, bundle=9/mvn:org.apache.felix/org.apache.felix.configadmin/1.9.16]
12:24:31.459 [ERROR] [org.apache.felix.configadmin         ] - Unexpected problem executing task
java.lang.IllegalMonitorStateException: attempt to unlock read lock, not locked by current thread
        at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.unmatchedUnlockException(ReentrantReadWriteLock.java:448) ~[?:?]
        at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:432) ~[?:?]
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1382) ~[?:?]
        at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:897) ~[?:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl.unlock(PaxLoggingServiceImpl.java:180) ~[bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.clearDelegateContext(PaxLoggerImpl.java:383) ~[bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.doLog0(PaxLoggerImpl.java:356) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.doLog(PaxLoggerImpl.java:337) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.debug(PaxLoggerImpl.java:142) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl.logImpl(PaxLoggingServiceImpl.java:305) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl.access$000(PaxLoggingServiceImpl.java:65) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl$1ManagedPaxLoggingService.log(PaxLoggingServiceImpl.java:553) [bundleFile:?]
        at org.apache.felix.cm.impl.Log.log(Log.java:186) ~[bundleFile:?]
        at org.apache.felix.cm.impl.Log.log(Log.java:168) [bundleFile:?]
        at org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.sendEvent(ConfigurationManager.java:1678) ~[bundleFile:?]
        at org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.run(ConfigurationManager.java:1651) ~[bundleFile:?]
        at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:138) ~[bundleFile:?]
        at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:105) [bundleFile:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]
12:24:44.104 [DEBUG] [org.apache.felix.configadmin         ] - getConfiguration(pid=org.ops4j.pax.logging, location=null)
12:24:44.106 [DEBUG] [org.apache.felix.configadmin         ] - Found cached configuration org.ops4j.pax.logging bound to mvn:org.ops4j.pax.logging/pax-logging-log4j2/1.11.2
12:24:44.155 [DEBUG] [org.apache.felix.configadmin         ] - update(properties={felix.fileinstall.filename=file:/var/lib/openhab/etc/org.ops4j.pax.logging.cfg, org.ops4j.pax.logging.log4j2.config.file=/var/lib/openhab/etc/log4j2.xml, service.pid=org.ops4j.pax.logging})
12:24:44.158 [DEBUG] [org.apache.felix.configadmin         ] - Updating config org.ops4j.pax.logging with {felix.fileinstall.filename=file:/var/lib/openhab/etc/org.ops4j.pax.logging.cfg, org.ops4j.pax.logging.log4j2.config.file=/var/lib/openhab/etc/log4j2.xml, service.pid=org.ops4j.pax.logging}
12:24:44.162 [DEBUG] [org.apache.felix.configadmin         ] - No SynchronousConfigurationListeners to send CM_UPDATED event to.
12:24:44.164 [DEBUG] [org.apache.felix.configadmin         ] - Scheduling task Fire ConfigurationEvent: pid=org.ops4j.pax.logging
12:24:44.166 [DEBUG] [org.apache.felix.configadmin         ] - Running task Fire ConfigurationEvent: pid=org.ops4j.pax.logging
12:24:44.166 [DEBUG] [org.apache.felix.configadmin         ] - Scheduling task Update: pid=org.ops4j.pax.logging
12:24:44.167 [DEBUG] [org.apache.felix.configadmin         ] - Running task Update: pid=org.ops4j.pax.logging
12:24:44.167 [DEBUG] [org.apache.felix.configadmin         ] - Sending CM_UPDATED event for org.ops4j.pax.logging to [org.osgi.service.cm.ConfigurationListener, id=127, bundle=46/mvn:org.apache.aries.jax.rs/org.apache.aries.jax.rs.whiteboard/1.0.9]
12:24:44.169 [DEBUG] [org.apache.felix.configadmin         ] - Updating configuration org.ops4j.pax.logging to revision #38
12:24:44.169 [DEBUG] [org.apache.felix.configadmin         ] - Sending CM_UPDATED event for org.ops4j.pax.logging to [org.osgi.service.cm.ConfigurationListener, id=120, bundle=9/mvn:org.apache.felix/org.apache.felix.configadmin/1.9.16]
12:24:44.169 [DEBUG] [org.apache.felix.configadmin         ] - UpdateConfiguration(org.ops4j.pax.logging) scheduled
12:24:44.170 [DEBUG] [org.apache.felix.configadmin         ] - canReceive=true: bundle=mvn:org.ops4j.pax.logging/pax-logging-log4j2/1.11.2; configuration=mvn:org.ops4j.pax.logging/pax-logging-log4j2/1.11.2
12:24:44.170 [DEBUG] [org.apache.felix.configadmin         ] - Sending CM_UPDATED event for org.ops4j.pax.logging to [org.osgi.service.cm.ConfigurationListener, id=126, bundle=46/mvn:org.apache.aries.jax.rs/org.apache.aries.jax.rs.whiteboard/1.0.9]
12:24:44.171 [DEBUG] [org.apache.felix.configadmin         ] - Sending CM_UPDATED event for org.ops4j.pax.logging to [org.osgi.service.cm.ConfigurationListener, id=74, bundle=53/mvn:org.apache.karaf.config/org.apache.karaf.config.core/4.2.7]
12:24:44.318 [ERROR] [org.apache.felix.configadmin         ] - Unexpected problem executing task
java.lang.IllegalMonitorStateException: attempt to unlock read lock, not locked by current thread
        at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.unmatchedUnlockException(ReentrantReadWriteLock.java:448) ~[?:?]
        at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:432) ~[?:?]
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1382) ~[?:?]
        at java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:897) ~[?:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl.unlock(PaxLoggingServiceImpl.java:180) ~[bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.clearDelegateContext(PaxLoggerImpl.java:383) ~[bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.doLog0(PaxLoggerImpl.java:356) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.doLog(PaxLoggerImpl.java:337) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggerImpl.debug(PaxLoggerImpl.java:142) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl.logImpl(PaxLoggingServiceImpl.java:305) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl.access$000(PaxLoggingServiceImpl.java:65) [bundleFile:?]
        at org.ops4j.pax.logging.log4j2.internal.PaxLoggingServiceImpl$1ManagedPaxLoggingService.log(PaxLoggingServiceImpl.java:553) [bundleFile:?]
        at org.apache.felix.cm.impl.Log.log(Log.java:186) ~[bundleFile:?]
        at org.apache.felix.cm.impl.Log.log(Log.java:168) [bundleFile:?]
        at org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.sendEvent(ConfigurationManager.java:1678) ~[bundleFile:?]
        at org.apache.felix.cm.impl.ConfigurationManager$FireConfigurationEvent.run(ConfigurationManager.java:1651) ~[bundleFile:?]
        at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:138) ~[bundleFile:?]
        at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:105) [bundleFile:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]

Is that maybe the problem?

I have discovered more information that even describe the problem :slight_smile:

   openhab.service - openHAB instance, reachable at http://openHABianPi:8080
   Loaded: loaded (/usr/lib/systemd/system/openhab.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/openhab.service.d
           └─override.conf
   Active: active (running) since Sun 2020-12-27 11:51:34 CET; 55min ago
     Docs: https://www.openhab.org/docs/
           https://community.openhab.org
 Main PID: 19563 (java)
    Tasks: 225 (limit: 4915)
   CGroup: /system.slice/openhab.service
           └─19563 /usr/bin/java -XX:-UsePerfData -Dopenhab.home=/usr/share/openhab -Dopenhab.conf=/etc/openhab -Dopenhab.runtime=/usr/share/openhab/runtime -Dopenhab.userda

Dez 27 12:29:53 openHABianPi karaf[19563]:         at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)
Dez 27 12:29:53 openHABianPi karaf[19563]:         at org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)
Dez 27 12:29:53 openHABianPi karaf[19563]:         at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1405)
Dez 27 12:29:53 openHABianPi karaf[19563]:         at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:138)
Dez 27 12:29:53 openHABianPi karaf[19563]:         at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:105)
Dez 27 12:29:53 openHABianPi karaf[19563]:         at java.base/java.lang.Thread.run(Thread.java:834)
Dez 27 12:29:53 openHABianPi karaf[19563]: org.ops4j.pax.logging.pax-logging-api [log4j2] ERROR : Null object returned for RollingFile in Appenders. Ignored FQCN: org.apache
Dez 27 12:29:53 openHABianPi karaf[19563]: org.ops4j.pax.logging.pax-logging-api [log4j2] ERROR : Null object returned for RollingRandomAccessFile in Appenders. Ignored FQCN
Dez 27 12:29:53 openHABianPi karaf[19563]: org.ops4j.pax.logging.pax-logging-api [log4j2] ERROR : Unable to locate appender "LOGFILE" for logger config "root" Ignored FQCN:
Dez 27 12:29:53 openHABianPi karaf[19563]: org.ops4j.pax.logging.pax-logging-api [log4j2] ERROR : Unable to locate appender "EVENT" for logger config "openhab.event" Ignored

My environment variable seems point to the correct location

[13:08:31] openhabian@openHABianPi:~$ env | grep OPENHAB_LOGDIR
OPENHAB_LOGDIR=/var/log/openhab

Is it possible that the sys prefix is not correct at ${sys:openhab.logdir} int the file /var/lib/openhab/etc/log4j2.xml?

Problem was missing priviledges on the logfiles:

[13:24:17] openhabian@openHABianPi:~$ ll -a /var/log/openhab
insgesamt 1,1M
drwxr-xr-x 2 openhab openhab 4,0K Dez 23 12:48 ./
drwxr-xr-x 9 root    root    4,0K Dez 27 06:25 ../
-rw-r--r-- 1 openhab openhab    0 Dez 22 19:05 audit.log
-rw-r--r-- 1 root    root     53K Dez 23 12:51 events.log
-rw-r--r-- 1 openhab openhab 128K Dez 22 23:01 events.log.1
-rw-r--r-- 1 openhab openhab 107K Dez 22 23:25 events.log.2
-rw-r--r-- 1 openhab openhab  97K Dez 22 23:51 events.log.3
-rw-r--r-- 1 openhab openhab 105K Dez 23 00:01 events.log.4
-rw-r--r-- 1 openhab openhab  48K Dez 23 00:13 events.log.5
-rw-r--r-- 1 openhab openhab  67K Dez 23 00:25 events.log.6
-rw-r--r-- 1 openhab openhab  48K Dez 23 00:28 events.log.7
-rw-r--r-- 1 root    root     17K Dez 23 12:51 openhab.log
-rw-r--r-- 1 openhab openhab  55K Dez 22 23:25 openhab.log.1
-rw-r--r-- 1 openhab openhab  41K Dez 22 23:51 openhab.log.2
-rw-r--r-- 1 openhab openhab  65K Dez 23 00:01 openhab.log.3
-rw-r--r-- 1 openhab openhab  22K Dez 23 00:13 openhab.log.4
-rw-r--r-- 1 openhab openhab  29K Dez 23 00:25 openhab.log.5
-rw-r--r-- 1 openhab openhab  80K Dez 23 00:28 openhab.log.6
-rw-r--r-- 1 root    root     50K Dez 23 00:31 openhab.log.7
-rwxr-xr-x 1 openhab openhab    0 Dez 21 15:29 Readme.txt*

after executing of chown and chgrp to the files openhab.log, openhab.log.7 and events.log log-entries to LogViewer are working again:

sudo chgrp openhab events.log
sudo chown openhab events.log
sudo chgrp openhab openhab.log
sudo chown openhab openhab.log
sudo chgrp openhab openhab.log.7
sudo chown openhab openhab.log.7