kotlinlogging-vs-kloggin
kotlinlogging-vs-kloggin
Kotlin-Logging (MicroUtils / oshai)
- ๊ฐ์
kotlin-logging
์mu.KotlinLogging
๋ค์์คํ์ด์ค๋ก ์ฌ์ฉ๋๋ฉฐ, SLF4J ๊ธฐ๋ฐ์ Kotlin ์นํ์ ์ธ ๋ํผ(wrapper) ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค. (์:import mu.KotlinLogging
) ๋ก๊ฑฐ๋ฅผ ์ ์ธํ ๋ ํด๋์ค ์ด๋ฆ์ ์ง์ ์ง์ ํ์ง ์์๋ ๋๊ณ , ๋ฉ์์ง๋ฅผ ๋๋ค ํํ๋ก ์ ๋ฌํ์ฌ ๋ ์ด์ง(lazy) ๋ฉ์์ง ํ๊ฐ๋ฅผ ์ง์ํฉ๋๋ค. ํน์ง
logger {}
๋ฅผ ํตํด ๊ฐํธํ๊ฒ ๋ก๊ฑฐ ์์ฑ- ์ฑ๋ฅ ์ต์ ํ๋ฅผ ์ํด ๋ก๊ทธ ๋ ๋ฒจ์ด ํ์ฑํ๋ ๊ฒฝ์ฐ์๋ง ๋ฉ์์ง ํ๊ฐ
- SLF4J ๊ธฐ๋ฐ์ด๋ฏ๋ก ๊ธฐ์กด ๋ก๊น ๋ฐฑ์๋(Logback ๋ฑ)์ ํธํ
- ๋ฉํฐํ๋ซํผ(MPP) ์ง์ ๊ฐ๋ฅ์ฑ ์์
Klogging
๊ฐ์
Klogging
์ pure Kotlin ๊ธฐ๋ฐ์ ๋ก๊น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก, ๊ตฌ์กฐํ๋(structured) ๋ก๊น , ์ฝ๋ฃจํด ์ค์ฝํ ๊ธฐ๋ฐ์ ์ปจํ ์คํธ ์ ๋ฌ, ๊ณ ํด์๋ ํ์์คํฌํ ๋ฑ์ ์ค์ฌ์ผ๋ก ์ค๊ณ๋์์ต๋๋ค- (GitHub, klogging.io).ํน์ง
- ๋ฉ์์ง๋ฅผ ๋จ์ํ ๋ฌธ์์ด์ด ์๋ ๊ตฌ์กฐํ๋ ์ด๋ฒคํธ(structured log event)๋ก ์์ฑ
- Kotlin ์ฝ๋ฃจํด ์ปจํ ์คํธ์ ํฌํจ๋ ์ ๋ณด๋ฅผ ์๋์ผ๋ก ๋ก๊ทธ์ ํฌํจ
- ์ต์ ๋ง์ดํฌ๋ก์ด ๋จ์, ๊ฐ๋ฅํ๋ฉด ๋๋ ธ์ด๊น์ง ์ง์ํ๋ ๊ณ ํด์๋ ํ์์คํฌํ
๋น๋๊ธฐ ๋ก๊น ์ค๊ณ (์ฝ๋ฃจํด ์ฑ๋ ๋ฑ ์ด์ฉ)
์์ฝ ์ ๋ฆฌ
ํญ๋ชฉ | kotlin-logging (mu ) | Klogging |
---|---|---|
๋ค์์คํ์ด์ค / Import | mu.KotlinLogging | (๊ณ ์ ํจํค์ง, klogging ๋ฑ) |
๊ธฐ๋ฐ | SLF4J ๋ํผ | Pure Kotlin, ์์ฒด ๊ตฌํ |
๊ฐ์ | ๊ฐ๋จํ๊ณ ์ต์ํ API, ๊ธฐ์กด SLF4J์ ํธํ | ๊ตฌ์กฐํ ๋ก๊น , ์ฝ๋ฃจํด ์ปจํ ์คํธ ํฌํจ, ๊ณ ํด์๋ ํ์์คํฌํ |
์ฉ๋ | ์ผ๋ฐ์ ์ธ ๋ก๊น , Kotlin ์ API ์ ํธ ์ | ๋ถ์ฐ/๋น๋๊ธฐ ํ๊ฒฝ, ๊ตฌ์กฐํ๋ ๋ก๊น , ์ปจํ ์คํธ ์ ๋ฌ ์ |
์ ๋ฆฌํ๋ฉดโฆ
mu.KotlinLogging
์ ์ ํต์ ์ธ SLF4J ๊ธฐ๋ฐ์ Kotlin์ฉ ๋ํผ๋ก์, ๊ฐํธํ๊ฒ ์ฌ์ฉํ๋ ๋ก๊น ๋๊ตฌ์ ๋๋ค.- ๋ฐ๋ฉด์ Klogging์ ์ฝ๋ฃจํด๊ณผ ๊ตฌ์กฐํ ๋ก๊น ์ ์ฃผ์์ ์ ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก, ๋ณด๋ค ํ๋์ ์ธ ๊ตฌ์กฐํ๋ ๋ก๊ทธ ์ฒ๋ฆฌ๋ฅผ ํ์๋ก ํ ๋ ์ ํํ๋ฉด ์ข์ต๋๋ค.
This post is licensed under CC BY 4.0 by the author.