Come scrivere i LOG di Openhab su una unità di memorizzazione esterna, ed evitare di scrivere, e stressare, la scheda SD sulla quale girà il sistema operativo?
Semplice no, ma sicuramente alla portata di tutti.
Entrando dentro la directory che contiene openhab, prendiamo il file
./logs/logback.xml
Dentro troveremo delle righe del tipo
<file>${openhab.logdir:-logs}/openhab.log</file>
Ciò che bisogna fare è sostituire il path con il percorso che desideriamo. Prima, però, occorre montare l’unità USB. Io l’ho fatto da interfaccia web usando OpenMediaVault, che avevo già installato prima. Per farlo da linea di comando, usate google, cencando “Montaggio di una pendrive USB” si trovano facilmente le istruzioni da usare.
Modifichiamo le righe in questo modo:
/media/20EC6EC2EC6E91B8/openhabLog/openhab.log
dove
/media/20EC6EC2EC6E91B8/openhabLog/
è il mio path. Voi metterete il vostro.
Invece, per dirottare i log di un singolo binding, si possono aggiungere le righe seguenti. Questo è un esempio per scrivere a parte il log del binding Souliss:
<appender name="SOULISSFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!--<file>${openhab.logdir:-logs}/souliss.log</file>--> <file>/media/20EC6EC2EC6E91B8/openhabLog/souliss.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- weekly rollover and archiving --> <fileNamePattern>souliss-%d{yyyy-ww}.log.zip</fileNamePattern> <!-- keep 30 days' worth of history --> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss} - %msg%n</pattern> </encoder> </appender> <logger name="org.openhab.binding.souliss" level="DEBUG"> <appender-ref ref="SOULISSFILE" /> <appender-ref ref="STDOUT" /> </logger>