libeufin

Integration and sandbox testing for FinTech APIs and data formats
Log | Files | Refs | Submodules | README | LICENSE

commit 3c50e816038d0efa289329f286cb81ac31fbbeee
parent 6044b5c2fd83632eb1441545cb1d427a74e98b0a
Author: MS <ms@taler.net>
Date:   Wed, 24 Jun 2020 12:09:21 +0200

sandbox offers logfile name among options

Diffstat:
Mnexus/src/main/kotlin/tech/libeufin/nexus/Main.kt | 2+-
Msandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt | 6+++++-
Asandbox/src/main/resources/late-logback.xml | 37+++++++++++++++++++++++++++++++++++++
Dsandbox/src/main/resources/logback.xml | 36------------------------------------
Mutil/src/main/kotlin/Config.kt | 2++
5 files changed, 45 insertions(+), 38 deletions(-)

diff --git a/nexus/src/main/kotlin/tech/libeufin/nexus/Main.kt b/nexus/src/main/kotlin/tech/libeufin/nexus/Main.kt @@ -33,7 +33,7 @@ import org.slf4j.Logger import org.slf4j.LoggerFactory import tech.libeufin.nexus.server.serverMain import tech.libeufin.util.CryptoUtil.hashpw -import setLogFile +import tech.libeufin.util.* lateinit var logger: Logger diff --git a/sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt b/sandbox/src/main/kotlin/tech/libeufin/sandbox/Main.kt @@ -64,13 +64,14 @@ import com.github.ajalt.clikt.parameters.arguments.argument import com.github.ajalt.clikt.parameters.options.default import com.github.ajalt.clikt.parameters.options.option import com.github.ajalt.clikt.parameters.options.prompt +import tech.libeufin.util.* class CustomerNotFound(id: String?) : Exception("Customer ${id} not found") class BadInputData(inputData: String?) : Exception("Customer provided invalid input data: ${inputData}") class UnacceptableFractional(badNumber: BigDecimal) : Exception( "Unacceptable fractional part ${badNumber}" ) -val LOGGER: Logger = LoggerFactory.getLogger("tech.libeufin.sandbox") +lateinit var LOGGER: Logger data class SandboxError( val statusCode: HttpStatusCode, @@ -83,7 +84,10 @@ class SandboxCommand : CliktCommand() { class Serve : CliktCommand("Run sandbox HTTP server") { private val dbName by option().default("libeufin-sandbox.sqlite3") + private val logFile by option() override fun run() { + setLogFile(logFile, "sandboxLogFile", "late-logback.xml") + LOGGER = LoggerFactory.getLogger("tech.libeufin.sandbox") serverMain(dbName) } } diff --git a/sandbox/src/main/resources/late-logback.xml b/sandbox/src/main/resources/late-logback.xml @@ -0,0 +1,36 @@ +<configuration> + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> + </encoder> + </appender> + + <property name="SANDBOX_LOG_FILE" value="${sandboxLogFile}" /> + <appender name="SANDBOX-FILE" class="ch.qos.logback.core.FileAppender"> + <file>${SANDBOX_LOG_FILE}</file> + <append>false</append> + <encoder> + <pattern>%-5relative %-5level %logger{35} - %msg%n</pattern> + </encoder> + </appender> + + <logger name="tech.libeufin.sandbox" level="DEBUG" additivity="false"> + <appender-ref ref="STDOUT" /> + <appender-ref ref="SANDBOX-FILE" /> + </logger> + + <logger name="tech.libeufin.util" level="TRACE" additivity="false"> + <appender-ref ref="STDOUT" /> + <appender-ref ref="SANDBOX-FILE" /> + </logger> + + + <logger name="io.netty" level="WARN" /> + <logger name="ktor" level="WARN" /> + <logger name="Exposed" level="WARN" /> + + <root level="WARN"> + <appender-ref ref="STDOUT" /> + </root> + +</configuration> +\ No newline at end of file diff --git a/sandbox/src/main/resources/logback.xml b/sandbox/src/main/resources/logback.xml @@ -1,35 +0,0 @@ -<configuration> - <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> - </encoder> - </appender> - - <appender name="SANDBOX-FILE" class="ch.qos.logback.core.FileAppender"> - <file>/tmp/sandbox.log</file> - <append>false</append> - <encoder> - <pattern>%-5relative %-5level %logger{35} - %msg%n</pattern> - </encoder> - </appender> - - <logger name="tech.libeufin.sandbox" level="DEBUG" additivity="false"> - <appender-ref ref="STDOUT" /> - <appender-ref ref="SANDBOX-FILE" /> - </logger> - - <logger name="tech.libeufin.util" level="TRACE" additivity="false"> - <appender-ref ref="STDOUT" /> - <appender-ref ref="SANDBOX-FILE" /> - </logger> - - - <logger name="io.netty" level="WARN" /> - <logger name="ktor" level="WARN" /> - <logger name="Exposed" level="WARN" /> - - <root level="WARN"> - <appender-ref ref="STDOUT" /> - </root> - -</configuration> -\ No newline at end of file diff --git a/util/src/main/kotlin/Config.kt b/util/src/main/kotlin/Config.kt @@ -1,3 +1,5 @@ +package tech.libeufin.util + import ch.qos.logback.classic.util.ContextInitializer import ch.qos.logback.core.util.Loader