π§ 곡μ λμ보λ μ΄μ κΈμμ μ΄ν΄λ³΄μλ―μ΄ λμ보λλ₯Ό νλνλ μ§μ μμ±νλ κ²μ λ²κ±°λ‘μ΄ μμ
μ
λλ€. μ΄λ² κΈμμλ λ€λ₯Έ μ¬μ©μλ€μ΄ μ΄λ―Έ μμ±νμ¬ κ³΅μ ν΄λ λμ보λλ₯Ό μ¬μ©νλ λ°©λ²μ λν΄ μμλ³΄κ² μ΅λλ€. μ°μ λ€μ λμ보λ 곡μ μ¬μ΄νΈ(https://grafana.com/grafana/dashboards)μ μ μν©λλ€. μ μν΄μ springμ κ²μν΄ λ³΄λ©΄ μμ κ°μ΄ μ΄λ―Έ λ§λ€μ΄λ μ¬λ¬ λμ보λλ₯Ό νμΈν μ μμ΅λλ€. (μ λ°μ€μΉ λκ°κ° λ§μ΄ μ¬μ©λλ€κ³ ν©λλ€. λΆνΈ 3.0μ μμ§ μμ§λ§, 2.1 λμ보λλ νΈνμ΄ λλ€κ³ ν©λλ€.) π§ 곡μ λμ보λ μ¬μ©νκΈ° - Spring Boot 2.1 System Monitor μμ Spring Boot 2.1 System Monitorλ₯Ό μ¬μ©ν΄ 보λλ‘ νκ² μ΅λλ€...
ποΈ Spring/λͺ¨λν°λ§
π§ κ·ΈλΌνλ (Grafana) μ΄μ κΈμμ κ°λ¨ν μΈκΈνμ§λ§ λ€μ ν λ² νλλ‘ νκ² μ΅λλ€. νλ‘λ©ν
μ°μ€κ° DBλΌκ³ νλ€λ©΄, μ΄ DBμ μλ λ°μ΄ν°λ₯Ό λΆλ¬μ μ¬μ©μκ° λ³΄κΈ° νΈνκ² λ³΄μ¬μ£Όλ λμ보λκ° νμν©λλ€. κ·ΈλΌνλλ λ°μ΄ν°λ₯Ό κ·Έλνλ‘ λ³΄μ¬μ£Όλ ν΄μ
λλ€. μ λ§μ κ·Έλνλ₯Ό μ 곡νκ³ , νλ‘λ©ν
μ°μ€λ₯Ό ν¬ν¨ν λ€μν λ°μ΄ν°μμ€λ₯Ό μ§μν©λλ€. π§ κ·ΈλΌνλ μ€μΉ κ·ΈλΌνλ μ€μΉ μ¬μ΄νΈ(https://grafana.com/grafana/download)λ‘ μ΄λν©λλ€. μ¬κΈ°μλ λ§₯ OS κΈ°μ€μΌλ‘ μ€μΉλ₯Ό μ§ννκ² μ΅λλ€. μμ λͺ
λ Ήμ΄λ₯Ό 볡μ¬ν©λλ€. μ΄ν κ·ΈλΌνλλ₯Ό μ€μΉν (μμμ)ν΄λλ‘ μ΄λν λ€, μμ λͺ
λ Ήμ΄λ₯Ό κ·Έλλ‘ μ
λ ₯ν©λλ€. (μ€μΉνλλ° μκ°μ΄ μ’ κ±Έλ¦΄ μ μμ΅λλ€) κ·ΈλΌνλλ₯Ό μ€μΉν ν΄λμ bin ν΄λλ‘ μ΄λ..
π§ νλ‘λ©ν
μ°μ€ (Prometheus) μ ν리μΌμ΄μ
μμ λ°μν λ©νΈλ¦(μ§ν)λ₯Ό κ·Έ μκ°λ§ νμΈνλ κ²μ΄ μλλΌ κ³Όκ±° μ΄λ ₯κΉμ§ ν¨κ» νμΈνλ €λ©΄ λ©νΈλ¦μ 보κ΄νλ λ°μ΄ν°λ² μ΄μ€κ° νμν©λλ€. λν λ©νΈλ¦μ μ§μμ μΌλ‘ μμ§νκ³ μ΄λ₯Ό DBμ μ μ₯νλ 무μΈκ°κ° νμν©λλ€. νλ‘λ©ν
μ°μ€κ° λ°λ‘ μ΄λ° μν μ μνν©λλ€. π§ κ·ΈλΌνλ (Grafana) νλ‘λ©ν
μ°μ€κ° DBλΌκ³ νλ€λ©΄, μ΄ DBμ μλ λ°μ΄ν°λ₯Ό λΆλ¬μ μ¬μ©μκ° λ³΄κΈ° νΈνκ² λ³΄μ¬μ£Όλ λμ보λκ° νμν©λλ€. κ·ΈλΌνλλ λ°μ΄ν°λ₯Ό κ·Έλνλ‘ λ³΄μ¬μ£Όλ ν΄μ
λλ€. μ λ§μ κ·Έλνλ₯Ό μ 곡νκ³ , νλ‘λ©ν
μ°μ€λ₯Ό ν¬ν¨ν λ€μν λ°μ΄ν°μμ€λ₯Ό μ§μν©λλ€. π§ νλ‘λ©ν
μ°μ€μ κ·ΈλΌνλλ₯Ό μ¬μ©ν λͺ¨λν°λ§ μ 체 ꡬ쑰λ λ€μκ³Ό κ°μ΅λλ€. μ€νλ§ λΆνΈ μ‘μΆμμ΄ν°μ λ§μ΄ν¬λ‘λ―Έν°λ₯Ό μ¬μ©νλ©΄ μ¬..
π§ λ§μ΄ν¬λ‘λ―Έν° μλΉμ€λ₯Ό μ΄μν λλ μ ν리μΌμ΄μ
μ CPU, λ©λͺ¨λ¦¬, 컀λ₯μ
μ¬μ©, κ³ κ° μμ²μμ κ°μ λ§μ μ§ν(metric)λ€μ νμΈνλ κ²μ΄ νμν©λλ€. κ·ΈλμΌ μ΄λμ μ΄λ€ λ¬Έμ κ° λ°μνλμ§ μ¬μ μ λμλ ν μ μκ³ , μ€μ λ¬Έμ κ° λ°μνλλΌλ μμΈμ λΉ λ₯΄κ² νμ
ν΄μ λμ²ν μ μμ΅λλ€. μλ₯Ό λ€μ΄ λͺ¨λν°λ§μ ν΅ν΄ λ©λͺ¨λ¦¬ μ¬μ©λμ΄ κ°λ μ°Όλ€λ κ²μ λ°κ²¬νλ€λ©΄, λ©λͺ¨λ¦¬ λ¬Έμ μ κ΄λ ¨μλ κ³³μ λΉ λ₯΄κ² μ°Ύμμ λμν μ μμ κ²μ
λλ€. νμ¬ μλ§μ λͺ¨λν°λ§ ν΄μ΄ μλ―μ¬, μμ€ν
μ λ€μν μ 보λ₯Ό μ΄ λͺ¨λν°λ§ ν΄μ μ λ¬ν΄μ μ¬μ©νκ² λ©λλ€. λ€μμ λ§μ΄ μ¬μ©λλ λͺ¨λν°λ§ ν΄λ€μ μμμ
λλ€. μμ κ°μ λͺ¨λν°λ§ ν΄λ€μ μ¬μ©νκΈ° μν΄μλ, μμ€ν
μ λ€μν μ§νλ€μ κ°κ°μ λͺ¨λν°λ§ ν΄μ λ§λλ‘ λ§λ€μ΄μ 보λ΄μ£Όμ΄μΌ ..
π§ νλ‘λμ
μ€λΉ κΈ°λ₯ μ ν리μΌμ΄μ
μ κ°λ°ν λμλ κΈ°λ₯μ μ μꡬμ¬νλ§μ κ°λ°νλ κ²μ΄ μλλλ€. μλΉμ€λ₯Ό μ€μ λ°°ν¬ν μ΄ν μλΉμ€μ λ¬Έμ κ° μλμ§ λͺ¨λν°λ§νλ νλλ€μ΄ μΆκ°λ‘ νμν©λλ€. μ΄μ νκ²½μμ μ ν리μΌμ΄μ
μ μ€νν λ νμν μ΄λ¬ν κΈ°λ₯λ€μ νλ‘λμ
μ€λΉ κΈ°λ₯μ΄λΌ ν©λλ€. μ¦ νλ‘λμ
μ μ΄μμ λ°°ν¬ν λ μ€λΉν΄μΌ νλ λΉ κΈ°λ₯μ μμλ€μ μλ―Έν©λλ€. λ€μκ³Ό κ°μ κ²λ€μ΄ νλ‘λμ
μ€λΉ κΈ°λ₯μ μν©λλ€. μ§ν (metric) μΆμ (trace) κ°μ¬ (auditing) λͺ¨λν°λ§ μ΄λ€μ μ ν리μΌμ΄μ
μ΄ νμ¬ μ΄μμλμ§, λ‘κ·Έ μ 보λ μ μμ μΌλ‘ μ€μ λμλμ§, 컀λ₯μ
νμ μΌλ§λ μ¬μ©λκ³ μλμ§ λ±μ νμΈνλλ° μ¬μ©λ©λλ€. π§ μ€νλ§ λΆνΈ μ‘μΆμμ΄ν° μ€νλ§ λΆνΈκ° μ 곡νλ μ‘μΆμμ΄ν°λ νλ‘λμ
μ€λΉ κΈ°λ₯..