summaryrefslogtreecommitdiff
path: root/opendc/opendc-compute/src
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2020-05-07 21:26:30 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2020-05-07 21:26:30 +0200
commit6f12a5e3bc59f4ca386cf8a6b231c1464ea10169 (patch)
tree1246dba22a85d362038110cb3ca51e2c4b4b0206 /opendc/opendc-compute/src
parent9d60d8d5d0fddf7c90c098be4d50681cffea3022 (diff)
feat: Add support for more sophisticated logging
Diffstat (limited to 'opendc/opendc-compute/src')
-rw-r--r--opendc/opendc-compute/src/main/kotlin/com/atlarge/opendc/compute/virt/service/SimpleVirtProvisioningService.kt13
1 files changed, 8 insertions, 5 deletions
diff --git a/opendc/opendc-compute/src/main/kotlin/com/atlarge/opendc/compute/virt/service/SimpleVirtProvisioningService.kt b/opendc/opendc-compute/src/main/kotlin/com/atlarge/opendc/compute/virt/service/SimpleVirtProvisioningService.kt
index 2185b372..3603ae69 100644
--- a/opendc/opendc-compute/src/main/kotlin/com/atlarge/opendc/compute/virt/service/SimpleVirtProvisioningService.kt
+++ b/opendc/opendc-compute/src/main/kotlin/com/atlarge/opendc/compute/virt/service/SimpleVirtProvisioningService.kt
@@ -24,10 +24,13 @@ import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.launch
import kotlinx.coroutines.suspendCancellableCoroutine
import kotlinx.coroutines.withContext
+import mu.KotlinLogging
import kotlin.coroutines.Continuation
import kotlin.coroutines.resume
import kotlin.math.max
+private val logger = KotlinLogging.logger {}
+
@OptIn(ExperimentalCoroutinesApi::class)
class SimpleVirtProvisioningService(
public override val allocationPolicy: AllocationPolicy,
@@ -141,7 +144,7 @@ class SimpleVirtProvisioningService(
unscheduledVms++
incomingImages -= imageInstance
- println("[${clock.millis()}] CANNOT SPAWN ${imageInstance.image}")
+ logger.warn("Failed to spawn ${imageInstance.image}: does not fit [${clock.millis()}]")
continue
} else {
break
@@ -149,7 +152,7 @@ class SimpleVirtProvisioningService(
}
try {
- println("[${clock.millis()}] SPAWN ${imageInstance.image} on ${selectedHv.server.uid} ${selectedHv.server.name} ${selectedHv.server.flavor}")
+ logger.info { "Spawning ${imageInstance.image} on ${selectedHv.server.uid} ${selectedHv.server.name} ${selectedHv.server.flavor}" }
incomingImages -= imageInstance
// Speculatively update the hypervisor view information to prevent other images in the queue from
@@ -174,7 +177,7 @@ class SimpleVirtProvisioningService(
when (event) {
is ServerEvent.StateChanged -> {
if (event.server.state == ServerState.SHUTOFF) {
- println("[${clock.millis()}] FINISH ${event.server.uid} ${event.server.name} ${event.server.flavor}")
+ logger.info { "Server ${event.server.uid} ${event.server.name} ${event.server.flavor} finished." }
runningVms--
finishedVms++
@@ -191,13 +194,13 @@ class SimpleVirtProvisioningService(
}
.launchIn(this)
} catch (e: InsufficientMemoryOnServerException) {
- println("Unable to deploy image due to insufficient memory")
+ logger.error("Failed to deploy VM", e)
selectedHv.numberOfActiveServers--
selectedHv.provisionedCores -= imageInstance.flavor.cpuCount
selectedHv.availableMemory += requiredMemory
} catch (e: Throwable) {
- e.printStackTrace()
+ logger.error("Failed to deploy VM", e)
}
}
}