λ‘κΉ μ΄ μ νμν κΉ?
λ°°ν¬νκ²½μμ λμ μνλ₯Ό νμΈνκΈ° μν΄μ νμν©λλ€.
κΈ°μ‘΄μ System.out.println()
, System.err.println()
κ³Ό κ°μ νλ‘μ°λ‘λ νκ³κ° μμ΅λλ€.
λ‘κΉ μ΄ κΈ°λ‘νλ λ κ°μ§ μ¬ν
- μλΉμ€ λμ μν
- μ₯μ (exceptino || error)
λ‘κΉ νλ μμν¬
SLF4J
Logback
Log4j
nlog
System.out.println()λ³΄λ€ μ’μ μ
- μΆλ ₯ νμμ μ§μ ν μ μμ
- λ‘κ·Έ λ 벨μ μ€μ νμ¬ λ¨κΈ°κ³ μΆμ λ‘κ·Έλ₯Ό λ³λλ‘ μ§μ ν μ μμ
- κ°λ° μλ²μμλ λͺ¨λ λ‘κ·Έλ₯Ό μΆλ ₯νκ³ , μ΄μμλ²μμλ μΆλ ₯νμ§ μλ λ± λ‘κ·Έλ₯Ό μν©μ λ§κ² μ‘°μ ν μ μλ€
- μ½μ λΏ μλλΌ, νμΌμ΄λ λ€νΈμν¬λ± λ‘κ·Έλ₯Ό λ³λμ μμΉμ λ¨κΈΈ μ μμ
- μ±λ₯λ System.out.println()λ³΄λ€ μ’μ!
λ‘κ·Έλ 벨(Fatal > Error > Warn > Info > Debug > Trace)
Fatal
: λ§€μ° μ¬κ°ν μλ¬. νλ‘κ·Έλ¨μ΄ μ’ λ£λλ κ²½μ°λ‘ μμ±μ΄ λμ§ μλ κ²½μ°κ° μκΈ°κΈ° λλ¬Έμ μ μ¬μ©λμ§ μμError
: μλνμ§ μμ μλ¬κ° λ°μν κ²½μ°. νλ‘κ·Έλ¨μ΄ μ’ λ₯λμ§ μμ. μ£Όλ‘ μΈλΆ apiμμ²μλ¬(νλ‘κ·Έλ¨ λ΄μμ κ°λ°μκ° μλνμ§ μμ μλ¬)Warn
: μλ¬κ° λ μ μλ μ μ¬μ κ°λ₯μ±μ΄ μλ κ²½μ°Info
: λͺ νν μλκ° μλ μλ¬, μꡬμ¬νμ λ°λΌ μμ€ν λμμ 보μ¬μ€ λDebug
: Info λ λ²¨λ³΄λ€ λ μμΈν μ λ³΄κ° νμν κ²½μ°. Devνκ²½Trace
: Debug λ³΄λ€ λ μμΈν¨. Devνκ²½μμ λ²κ·Έλ₯Ό ν΄κ²°νκΈ° μν΄μ μ¬μ©
λΉ¨κ°μ : κ°λ°μκ° μλνμ§ μμ μμΈ
νλμ : κ°λ°μκ° μλν μμΈ
μ€μ λ log levelμ νμ λ‘κ·Έ λ 벨μ λμ€μ§ μμ.
λ‘κΉ vs λλ²κΉ
λλ²κΉ μ μ¬μ©ν μ μλ€λ©΄ μ¬μ©νκ³ , λλ²κΉ μ μ¬μ©νκΈ° μ΄λ €μ΄ νκ²½(μ€μ μλ² λμ)μμ λ‘κΉ μ μ¬μ©
μμΈ μν©μ κ°μ₯ μ νμ
ν μ μλ κ²μ λλ²κΉ
μ μ¬μ©ν©λλ€.
νμ§λ§
μ€μ μλ²κ° ꡬλλλ μ€μ΄λΌλ©΄ λλ²κΉ
μ ν΅ν΄ νμΈνκΈ° μ΄λ ΅κΈ° λλ¬Έμ λ‘κΉ
μ νμ©ν μ μμ΅λλ€.
'πλ°±μλ : BackEnd' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
@PathVariable, @RequestParam, @ModelAttribute (0) | 2024.06.08 |
---|---|
λμμ± μ²λ¦¬ (0) | 2024.04.08 |
μΉμμΌ (0) | 2024.02.22 |
μ€νλ§ μνλ¦¬ν° (0) | 2024.02.21 |
REST API (1) | 2024.01.12 |