frontend
κ°λ°μ νλ€λ³΄λ©΄ μ¬λ¬κ°μ§ μλ¬λ₯Ό λ§λ₯λ리λ κ²½μ°κ° μ¦λ€. api μμ²μ€μ λ°μν μλ¬μ΄κ±΄, μλλ©΄ μ€μ runtime
μ€μ λ°μνλ μλ¬μ΄κ±΄ λ§μ΄λ€. κ·Έλμ μ΄λ¬ν μλ¬μ λ¬Έμ μν©μ λͺ¨λν°λ§ νκΈ°μν λ§μ solution
λ€μ΄ μ‘΄μ¬νλ€.
μλ§ λνμ μΈ solution
μ΄ Sentry, Datadog λ± μΌ κ²μ΄λ€. νμ¬ λ΄κ° μν κ°λ°νμμλ Datadogμ μ¬μ©νκ³ μμΌλ―λ‘, datadogμ κΈ°μ€μΌλ‘ λ΄ κ²½νμ λ§νλλ‘ νκ² λ€.
κ·Έλ³΄λ€ μμ, μ΄μ μ§μ₯μμμ μ΄μΌκΈ°λ₯Ό ν΄λ³΄μλ©΄ μ΄λ λ€. μ΄μ μ§μ₯μμ λ§μ§λ§ νλ‘μ νΈκ° κ°λ°μλ€μ μν CICD portal
μ ꡬμΆνλ νλ‘μ νΈμλ€. λΏλ§μλλΌ CICD
μ μ°κ³νμ¬ λͺ¨λν°λ§ λμ보λλ₯Ό μ 곡ν΄μ£Όλ μ
무κΉμ§ ꡬμΆνμ΄μΌνλ€. κ·Έλλ cloud
κΈ°λ°μ΄ μλ on-premise
λ°©μμ μΈνλΌλ₯Ό κ°μ§κ³ μμκ³ , solutionμ λμ
νλκ²λ μ½μ§ μμλ€. κ·Έλμ κ·Έ νλ‘μ νΈμμλ ELK
λ₯Ό νμ©ν΄μ κΈ°λ³Έμ μΈ μμ§ μν€ν
μ³λ₯Ό ꡬμ±νκ³ μ€μ λμ보λλ grafana
μ time-series
κ·Έλνλ₯Ό νμ©ν΄μ ꡬμΆνλ κΈ°μ΅μ΄ μλ€. (μ€κ°μ ν΄μ¬λ₯Ό ν΄μ λ§λ¬΄λ¦¬λ μ΄λ»κ² λμλμ§ λͺ¨λ₯΄κ² λ€λ§..)
μ΄μ¨λ μ΄ ν¬μ€ν
μμλ λ΄κ° μ§μ μ¬μ©νκ³ μλ datadog
μ λν΄μ μ΄μΌκΈ°λ₯Ό ν΄λ³΄λ €κ³ νλ€.
Datadog
Datadog
μ μλ², λ°μ΄ν°λ² μ΄μ€, λꡬ λ° μλΉμ€μ λν λͺ¨λν°λ§μ ν΅ν΄ ν΄λΌμ°λ κ·λͺ¨ μ ν리μΌμ΄μ
μ λν μ 체μ μΈ λͺ¨λν°λ§ μλΉμ€λ₯Ό Saas
ννλ‘ μ 곡νλ λͺ¨λν°λ§ μ루μ
μ€ νλμ΄λ€. λ§μ€μ½νΈλ Bits
λΌλ κ°μμ§μ΄λ€. (κ·μ½) Datadog
μ μλ²μνλ₯Ό μ€μκ° λͺ¨λν°λ§νλ κΈ°λ₯μ κΈ°λ³ΈμΌλ‘νμ¬, λ€μν ν΄λΌμ°λ νλ«νΌ(Aws, Azure, Google cloudλ±)κΈ°λ°μ μλΉμ€μ ν΅ν©κΈ°λ₯μ μ 곡νκ³ λ°μ΄ν°λ² μ΄μ€λ μΊμμ€ν μ΄ λ±μ λν μΆκ°μ μΈ λ©νΈλ¦ μμ§/λͺ¨λν°λ§μ μ§μνλ€.

νμ¬ νλ‘μ νΈμμλ Logging
, RUM (Real User Monitoring)
, Session play
μ΄ μΈκ°μ§λ₯Ό μ£Όλ‘ νμ©νκ³ μλ€. λ¬Όλ‘ μ΄λ€μ frontend
μ
μ₯μμ νΈλ¬λΈμν
μ νκΈ° μν΄μ μ¬μ©νλ κΈ°λ₯μ΄κ³ μ€μ λ‘ κ°λ°νμ μν΄ μ
μ
λμ΄ μλ κ²μ k8s
μ°λμ΄λ, μ€μ 리μμ€ metric
μμ§ λ± λ€μν κΈ°λ₯λ€μ μ¬μ©νκ³ μλ€.
Log Management
Log Management
μμλ log data
λ₯Ό λΆμνκ³ , νμνκ±°λ tracing
, metric
μ μ°λνμ¬ datadog μ 체μμ μ μ©ν logλ₯Ό μμ§ν μ μλ€. logλ client/server
logλ₯Ό ν¬ν¨νκ³ , λν Trace Id
λ₯Ό νμ©νλ©΄ νλμ μ λ³΄λ‘ from frontend to backend
μ log trackingμ ν μ μλ€. log agentλ₯Ό μ°κ²°νλ λ°©λ²μ λ€μ νμ΄μ§μμ νμΈν μ μλ€.
νμ¬ νλ‘μ νΈμμλ axios interceptor
λ΄λΆμ loggerλ₯Ό μ¬μ΄μ api ν΅μ μ΄ λ°μν λλ§λ€ server side μμ²μ κ²½μ° morgan formatμΌλ‘, client side μμ²μ κ²½μ° μ΅λν μ 보λ₯Ό κΊΌλ΄μ custom format
μΌλ‘ logλ₯Ό μΆμΆν΄ datadogμΌλ‘ μμ§νκ³ μλ€.
Log
λ₯Ό νμνκΈ° μν΄ λ€μν νν°λ₯Ό νμ©ν μ μλλ°, κΈ°λ³Έκ°μΈ time series
νλλ‘ λ³Όμλ μκ³ , datadog
μμ preset
ν΄λ λ€μν attributeλ€μ νμ©ν΄ κ²μμ ν μ μκ³ , ν΄λΉ attribute
λ₯Ό κ²μκΈ°μ€μΌλ‘ group
μ μ§μ΄ μμ보기, λΆν¬λ λ± λ€μνκ² νμ©ν μ μλ€.
RUM (Real user monitoring)
Datadog
μ RUM(Real User Monitoring)
μ μ¬μ©μμ μ€μκ° νλκ³Ό κ²½νμ λν μ¬λ¬ μ 보λ₯Ό μ 곡νλ€. RUM
μμλ λ€μκ³Ό κ°μ λ€κ°μ§ λͺ¨λν°λ§ κΈ°λ₯μ μ 곡νλ€
- Performance: μΉνμ΄μ§, λͺ¨λ°μΌ λ± νκ²½μμ νλ‘ νΈμλ μ½λμ μ±λ₯μ νΈλνΉ
- Error management: μ§νμ€μΈ λ²κ·Έμ λ¬Έμ λ₯Ό λͺ¨λν°λ§νκ³ μκ°/λ²μ λ³ νΈλνΉ
- Analytics/Usage: μλΉμ€λ₯Ό μ¬μ©νλ μ μ μ μ 보, νλ, μνΈμμ©λ°©μ λ±μ λΆμ
- Support: ν μ¬μ©μ μΈμ κ³Ό κ΄λ ¨λ λͺ¨λ μ 보λ₯Ό κ²μ
νμ¬ νλ‘μ νΈμμλ μ£Όλ‘ performance
μ error management
λ₯Ό νμ©νκ³ μλ€. νΉν error management
λ©λ΄μμ νμ¬ μλΉμ€μμ λ°μνλ μλ¬λ₯Ό κ°μννμ¬ λ³΄μ¬μ£Όκ³ , λ°μμλ₯Ό κΈ°μ€μΌλ‘ μ λ ¬λ ν΄μ£ΌκΈ° λλ¬Έμ κ·Έλ₯Ό κΈ°μ€μΌλ‘ μ΄λ€ μλ¬λ₯Ό μ°μ μ μΌλ‘ κ³ μ³μΌνλμ§λ₯Ό μ½κ² μμ μλ€.
λν RUM
μλ session replay
λΌλ κΈ°λ₯μ ν¬ν¨νλλ°, μ΄λ μ¬μ©μμ νλ©΄μ μΊ‘μ²νκ³ μ€μ μμμΌλ‘ μ¬μν μ μλ κΈ°λ₯μ΄λ€. RUM μ±λ₯ λ°μ΄ν°μ κ²°ν©λμ΄ μ΄λ€ νμ΄μ§λ₯Ό λ°©λ¬Έν΄μ μ΄λ€ νλμ νμλμ§ replayνλ κΈ°λ₯μ΄λ€. νμ¬ λ§‘κ³ μλ νλ‘μ νΈμλ κ²°μ κ° μ΄λ£¨μ΄μ§λ νμ΄μ§κ° μλ€. κ·Έκ³³μμλ§ session replay
λ₯Ό νμ±νν΄μ μ¬μ©νκ³ μκ³ , μ€μ μ¬μ©μλ€μ΄ μ΄λ€ λ²νΌμ ν΄λ¦νκ³ , μ΄λ€ νμ΄μ§λ‘ μ΄λνκ³ λ μ΄λμλΆν° νμ¬ κ²°μ νμ΄μ§λ‘ μλμ§ λ±λ± λ€μν μ 보μ κ²°ν©νμ¬ μ΄λ·°μ§μ λ§λλ° μ¬μ©νκ³ μλ κΈ°λ₯μ΄λ€. λ¬Όλ‘ κ°μΈμ 보λ ν
μ€νΈ λ±μ mark μ²λ¦¬λκΈ° λλ¬Έμ μ 보μ μΆμ λν μ°λ € μμ΄ μμ νκ² μ¬μ©νκ³ μλ€.
- https://sentry.io/welcome/
- https://www.datadoghq.com
- https://docs.datadoghq.com/getting_started/application/
- https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#default-standard-attribute-list