Avatar ·

Maneira idiomática de fazer logging em Kotlin: como fazer corretamente e sem boilerplate?

Olá, colegas! Sou novo em Kotlin (migrei do Java) e não consigo entender como organizar o logging corretamente no projeto. Em Java, eu costumava escrever algo como: ```kotlin private static final Logger log = LoggerFactory.getLogger(MyClass.class); ``` E depois usar `log.info(...)`. Em Kotlin, isso parece verboso e feio: tenho que especificar `javaClass` ou `this::class.java` toda vez. Resulta em muito código boilerplate. Tentei escrever assim: ```kotlin class MyService { private val logger = LoggerFactory.getLogger(MyService::class.java) fun doSomething() { logger.info("Fazendo algo") } } ``` Mas isso ainda se repete em cada classe. Ouvi falar sobre kotlin-logging e extension properties, mas não entendo completamente como funciona de forma idiomática. Por favor, me digam como é comum fazer logging em projetos Kotlin para que o código seja limpo, conciso e sem dependências desnecessárias? Existe algum padrão ou biblioteca padrão que...