Study
Ktor

Logging: CallLogging Plugin

Penjelasan

install(CallLogging) mencatat tiap request masuk (method, path, status code, durasi) — terintegrasi dengan SLF4J (standar logging Java/Kotlin), bisa dikustomisasi format log-nya lewat parameter format { call -> ... }.

Contoh Konsep

import io.ktor.server.plugins.calllogging.*
import org.slf4j.event.*

fun Application.module() {
    install(CallLogging) {
        level = Level.INFO
        format { call ->
            val status = call.response.status()
            val method = call.request.httpMethod.value
            val path = call.request.path()
            "$status: $method $path"
        }
    }
}

Praktikum

Tulis install(CallLogging) dengan level Level.INFO, dan format custom yang mencetak "[REQUEST] {method} {path}" (ambil dari call.request.httpMethod.value dan call.request.path()).

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

CallLogging SEBAIKNYA di-install PALING AWAL (sebelum plugin lain seperti Authentication) supaya SEMUA request tercatat, TERMASUK yang ditolak plugin lain sebelum sampai ke route handler — kalau di-install belakangan, request yang gagal di plugin sebelumnya tidak akan pernah tercatat.