/////
Search
💻

Datadog을 활용하여 애플리케이션에서 발생하는 모든 것을 모니터링하기

Monitoring vs Observability

의미가 비슷해보이지만, 다르다!
Monitoring이란
IT 시스템에서, CPU 사용량, 메모리 샤용량 같은 데이터를 수집 및 분석
시스템에 문제가 있는 것으로 추정되는 이상한 동작, 조건을 감지하고 경고하는게 목표
예측 가능한 개별 시스템에 사용
Observability란
시스템 내부 동작을 이해하는데 중점
시스템 동작을 깊이 이해하고 발생 가능한 모든 문제의 근본 원인을 파악
메트릭, 추적, 로그 등을 실시간으로 수집하고 분석하는 것을 포함

Why Observability

1.
문제 해결 속도 향상
2.
전체 시스템 이해도 증가
3.
대규모 시스템 관리 기능
4.
문제 예방 및 최적화

비슷한거 아닌가요?

EX) 피곤하다 피곤하다 → 잠을 잔다?? 잠을 자는게 근본적 원인 해결은 아니다. 일시적 해소일뿐(= Monitoring)
Observability근본적 원인 해결을 위한 추적을 해준다 메모리 문제, 코드 문제, 유저의 이상 행동 등의 정확한 원인을 추적 가능하게 함
그래서 왜 필요한가요? 24시간 풀가동해서 감시할 수는 없기 때문이다

그래서 Observability가 필요하다

통합 모니터링 환경 700+ 플러그인 실시간 연계분석 스마트한 알람

Infrastructure Monitoring

온프레미스 환경, 멀티클라우드 환경 등 다양한 환경을 모두 지원 Devops 개발자가 있는 경우가 생각보다 많지 않음 → 누구나 모니터링을 쉽게 할 수 있도록 지원

Application Performance Monitoring(APM)

서비스 전반에 걸친 문제 원인 파악
풀스택 가시성 기반 신속한 문제 해결 가능
Trace Search App Analytics

Log(Log Mangement)

누구나 쉽게 사용가능하도록 되어있으니 걱정 안 해도 된다
손쉬운 사용 지속적인 Correlation TroubleShooting 뛰어난 성능

RUM(Real User Monitoring)

Datadog의 RUM은 매우 강력한 도구
웹 로딩 성능, 네트워크 정보, 헤비 유저, 다양한 디바이스 사용자 추적 등 매우 편리 간단한 SDK만 설치하면 편리하게 사용 가능함 어느 페이지 어느 부분에서 에러가 난건지에 대한 상세한 것들도 모두 추적 가능 또한, 유저가 웹 화면에서 뭘 클릭하고 있는지 다 보여줌

결론

다음과 같은 장점을 가질 수 있다
VOC(Voice of Cosumer)
UI/UX 개선, 새로운 기능 개발
하나의 툴로 통합
프론트,백, 인프라, AI 엔지니어 모두 하나의 서비스로 통합
AWS, Azure 등등 왔다갔다하면서 쓸 이유가 없음
에러 감소
에러 방지하는건 어렵지만, 유저는 에러가 있어도 보고를 잘 안하기때문에, 우리가 직접 확인하면서 에러를 줄여나갈 수 있다
낭비되는 리소스 정리 가능
학생들은, datadog academy를 통해서 무료로 사용가능하기 때문에, 토이 플젝에 테스트해보면서 연습해보면 좋을 거 같다! 빅테크 기업들도 비싼거 알면서 다 도입을 하고 있다 → 비싼 가치가 있다고 생각한다 그래서 써보면 좋을 거 같다