From: TheSaminator Date: Sun, 6 Feb 2022 22:30:40 +0000 (-0500) Subject: Even more tracing! X-Git-Url: https://gitweb.starshipfights.net/?a=commitdiff_plain;h=121ed9f087a1c668006c9500a9c750ade5e0cb95;p=starship-fights Even more tracing! --- diff --git a/src/jvmMain/kotlin/starshipfights/data/data_connection.kt b/src/jvmMain/kotlin/starshipfights/data/data_connection.kt index b6cf384..7cc0abc 100644 --- a/src/jvmMain/kotlin/starshipfights/data/data_connection.kt +++ b/src/jvmMain/kotlin/starshipfights/data/data_connection.kt @@ -1,5 +1,11 @@ package starshipfights.data +import com.mongodb.ConnectionString +import com.mongodb.MongoClientSettings +import com.mongodb.event.CommandFailedEvent +import com.mongodb.event.CommandListener +import com.mongodb.event.CommandStartedEvent +import com.mongodb.event.CommandSucceededEvent import de.flapdoodle.embed.mongo.MongodExecutable import de.flapdoodle.embed.mongo.MongodStarter import de.flapdoodle.embed.mongo.config.MongoCmdOptions @@ -20,6 +26,7 @@ import org.litote.kmongo.serialization.registerSerializer import org.slf4j.Logger import org.slf4j.LoggerFactory import starshipfights.game.MomentSerializer +import starshipfights.sfLogger import java.io.File import java.net.ServerSocket import kotlin.system.exitProcess @@ -94,6 +101,26 @@ object ConnectionHolder { registerSerializer(MomentSerializer) databaseName = db - clientDeferred.complete(KMongo.createClient(conn.createUrl()).coroutine) + clientDeferred.complete( + KMongo.createClient( + MongoClientSettings + .builder() + .applyConnectionString(ConnectionString(conn.createUrl())) + .addCommandListener(object : CommandListener { + override fun commandStarted(event: CommandStartedEvent) { + sfLogger.info("Started Mongo command ${event.commandName}") + } + + override fun commandSucceeded(event: CommandSucceededEvent) { + sfLogger.info("Succeeded Mongo command ${event.commandName}") + } + + override fun commandFailed(event: CommandFailedEvent) { + sfLogger.info("Failed Mongo command ${event.commandName}") + } + }) + .build() + ).coroutine + ) } } diff --git a/src/jvmMain/kotlin/starshipfights/data/data_routines.kt b/src/jvmMain/kotlin/starshipfights/data/data_routines.kt index 064c6c6..aef066d 100644 --- a/src/jvmMain/kotlin/starshipfights/data/data_routines.kt +++ b/src/jvmMain/kotlin/starshipfights/data/data_routines.kt @@ -17,7 +17,7 @@ object DataRoutines : CoroutineScope { } fun initializeRoutines(): Job { - // Initialize tables by referring to them + // Initialize tables Admiral.initialize() BattleRecord.initialize() ShipInDrydock.initialize()