Hi All! I am trying to find out if I have found a bug, or else have just misunderstood something.
I'm learning Kotlin and kotlin-logging; I have some code which looks like:
import ...
private val logger: KLogger = KotlinLogging.logger {}
internal class Engine(private val di: DI) {
fun mainMethod(args: Array<String>) { // called from "real" main()
System.setProperty(SimpleLogger.DEFAULT_LOG_LEVEL_KEY, "DEBUG")
logger.trace("trace")
logger.debug("debug")
<http://logger.info|logger.info>("info")
logger.warn("warning")
logger.error("error")
...and when it runs, it is (sensibly) printing:
[main] DEBUG psm.Engine - debug
[main] INFO psm.Engine - info
[main] WARN psm.Engine - warning
[main] ERROR psm.Engine - error
HOWEVER: as soon as I declare another
logger: KLogger = KotlinLogging.logger {}
in another classfile in the same package, the behaviour *changes*; more in comments: