mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-07-26 00:15:18 -04:00
Setup rolling logs
This commit is contained in:
parent
f9c6f2967b
commit
c5967f1494
9 changed files with 92 additions and 35 deletions
|
@ -102,7 +102,7 @@ public class BootstrapNode {
|
||||||
log.info(peerAddress.toString());
|
log.info(peerAddress.toString());
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
Thread.sleep(60000);
|
Thread.sleep(10000);
|
||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
54
bootstrap/src/main/resources/logback.xml
Normal file
54
bootstrap/src/main/resources/logback.xml
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--
|
||||||
|
~ This file is part of Bitsquare.
|
||||||
|
~
|
||||||
|
~ Bitsquare is free software: you can redistribute it and/or modify it
|
||||||
|
~ under the terms of the GNU Affero General Public License as published by
|
||||||
|
~ the Free Software Foundation, either version 3 of the License, or (at
|
||||||
|
~ your option) any later version.
|
||||||
|
~
|
||||||
|
~ Bitsquare is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
~ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
~ FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
|
||||||
|
~ License for more details.
|
||||||
|
~
|
||||||
|
~ You should have received a copy of the GNU Affero General Public License
|
||||||
|
~ along with Bitsquare. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<configuration>
|
||||||
|
<appender name="CONSOLE_APPENDER" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
|
<encoder>
|
||||||
|
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg %xEx%n</pattern>
|
||||||
|
</encoder>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||||
|
<file>bootstrapNode.log</file>
|
||||||
|
<append>false</append>
|
||||||
|
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
||||||
|
<fileNamePattern>bootstrapNode_%i.log</fileNamePattern>
|
||||||
|
<minIndex>1</minIndex>
|
||||||
|
<maxIndex>10</maxIndex>
|
||||||
|
</rollingPolicy>
|
||||||
|
|
||||||
|
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
||||||
|
<maxFileSize>1MB</maxFileSize>
|
||||||
|
</triggeringPolicy>
|
||||||
|
<encoder>
|
||||||
|
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg %xEx%n</pattern>
|
||||||
|
</encoder>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<root level="INFO">
|
||||||
|
<appender-ref ref="CONSOLE_APPENDER"/>
|
||||||
|
<appender-ref ref="FILE"/>
|
||||||
|
</root>
|
||||||
|
|
||||||
|
<logger name="net.tomp2p" level="INFO"/>
|
||||||
|
<logger name="io.bitsquare" level="INFO"/>
|
||||||
|
|
||||||
|
<logger name="org.bitcoinj" level="WARN"/>
|
||||||
|
<logger name="com.vinumeris.updatefx" level="WARN"/>
|
||||||
|
|
||||||
|
</configuration>
|
Binary file not shown.
|
@ -1,5 +0,0 @@
|
||||||
#Generated by Maven
|
|
||||||
#Fri Mar 13 20:18:14 CET 2015
|
|
||||||
version=0.1.2-SNAPSHOT
|
|
||||||
groupId=io.bitsquare
|
|
||||||
artifactId=bootstrap
|
|
|
@ -53,6 +53,7 @@ public class RequestIsOfferAvailable extends Task<CheckOfferAvailabilityModel> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void applyErrorState() {
|
protected void applyErrorState() {
|
||||||
|
if (model.getOffer().getState() != Offer.State.OFFERER_OFFLINE)
|
||||||
model.getOffer().setState(Offer.State.AVAILABILITY_CHECK_FAILED);
|
model.getOffer().setState(Offer.State.AVAILABILITY_CHECK_FAILED);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,6 +22,7 @@ import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
public abstract class Task<T extends SharedModel> {
|
public abstract class Task<T extends SharedModel> {
|
||||||
private static final Logger log = LoggerFactory.getLogger(Task.class);
|
private static final Logger log = LoggerFactory.getLogger(Task.class);
|
||||||
|
|
||||||
public static Class<? extends Task> taskToInterceptBeforeRun;
|
public static Class<? extends Task> taskToInterceptBeforeRun;
|
||||||
public static Class<? extends Task> taskToInterceptAfterRun;
|
public static Class<? extends Task> taskToInterceptAfterRun;
|
||||||
|
|
||||||
|
@ -35,8 +36,8 @@ public abstract class Task<T extends SharedModel> {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void run() {
|
protected void run() {
|
||||||
interceptBeforeRun();
|
|
||||||
try {
|
try {
|
||||||
|
interceptBeforeRun();
|
||||||
doRun();
|
doRun();
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
appendExceptionToErrorMessage(t);
|
appendExceptionToErrorMessage(t);
|
||||||
|
@ -44,7 +45,6 @@ public abstract class Task<T extends SharedModel> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
abstract protected void doRun();
|
abstract protected void doRun();
|
||||||
|
|
||||||
protected void applyErrorState() {
|
protected void applyErrorState() {
|
||||||
|
@ -52,12 +52,12 @@ public abstract class Task<T extends SharedModel> {
|
||||||
|
|
||||||
private void interceptBeforeRun() {
|
private void interceptBeforeRun() {
|
||||||
if (getClass() == taskToInterceptBeforeRun)
|
if (getClass() == taskToInterceptBeforeRun)
|
||||||
throw new InterceptTaskException("Task intercepted before run executed: task = " + getClass().getSimpleName());
|
throw new InterceptTaskException("Task intercepted before run got executed. Task = " + getClass().getSimpleName());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void interceptBeforeComplete() {
|
private void interceptBeforeComplete() {
|
||||||
if (getClass() == taskToInterceptAfterRun)
|
if (getClass() == taskToInterceptAfterRun)
|
||||||
throw new InterceptTaskException("Task intercepted before complete called: task = " + getClass().getSimpleName());
|
throw new InterceptTaskException("Task intercepted before complete was called. Task = " + getClass().getSimpleName());
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void appendToErrorMessage(String message) {
|
protected void appendToErrorMessage(String message) {
|
||||||
|
@ -69,7 +69,12 @@ public abstract class Task<T extends SharedModel> {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void complete() {
|
protected void complete() {
|
||||||
|
try {
|
||||||
interceptBeforeComplete();
|
interceptBeforeComplete();
|
||||||
|
} catch (Throwable t) {
|
||||||
|
appendExceptionToErrorMessage(t);
|
||||||
|
failed();
|
||||||
|
}
|
||||||
taskHandler.handleComplete();
|
taskHandler.handleComplete();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,8 +54,7 @@ public class TaskRunner<T extends SharedModel> {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void next() {
|
protected void next() {
|
||||||
if (!failed && !isCanceled) {
|
if (!failed && !isCanceled && tasks.size() > 0) {
|
||||||
if (tasks.size() > 0) {
|
|
||||||
try {
|
try {
|
||||||
currentTask = tasks.poll();
|
currentTask = tasks.poll();
|
||||||
log.trace("Run task: " + currentTask.getSimpleName());
|
log.trace("Run task: " + currentTask.getSimpleName());
|
||||||
|
@ -69,7 +68,6 @@ public class TaskRunner<T extends SharedModel> {
|
||||||
resultHandler.handleResult();
|
resultHandler.handleResult();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public void cancel() {
|
public void cancel() {
|
||||||
isCanceled = true;
|
isCanceled = true;
|
||||||
|
|
|
@ -6,22 +6,26 @@
|
||||||
</encoder>
|
</encoder>
|
||||||
</appender>
|
</appender>
|
||||||
|
|
||||||
<!--
|
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||||
-->
|
<file>bitsquare.log</file>
|
||||||
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
|
|
||||||
<file>bitsquare_out.log</file>
|
|
||||||
<append>false</append>
|
<append>false</append>
|
||||||
|
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
|
||||||
|
<fileNamePattern>bitsquare.%i.log</fileNamePattern>
|
||||||
|
<minIndex>1</minIndex>
|
||||||
|
<maxIndex>10</maxIndex>
|
||||||
|
</rollingPolicy>
|
||||||
|
|
||||||
|
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
|
||||||
|
<maxFileSize>1MB</maxFileSize>
|
||||||
|
</triggeringPolicy>
|
||||||
<encoder>
|
<encoder>
|
||||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg %xEx%n</pattern>
|
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg %xEx%n</pattern>
|
||||||
</encoder>
|
</encoder>
|
||||||
</appender>
|
</appender>
|
||||||
|
|
||||||
|
<root level="INFO">
|
||||||
<root level="WARN">
|
|
||||||
<appender-ref ref="CONSOLE_APPENDER"/>
|
<appender-ref ref="CONSOLE_APPENDER"/>
|
||||||
<!--
|
|
||||||
<appender-ref ref="FILE"/>
|
<appender-ref ref="FILE"/>
|
||||||
-->
|
|
||||||
</root>
|
</root>
|
||||||
|
|
||||||
<logger name="io.bitsquare" level="TRACE"/>
|
<logger name="io.bitsquare" level="TRACE"/>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue