7장. 애플리케이션 모니터링
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
저는 서버 인프라에 대한 강력한 모니터링, 뛰어난 보안 모니터링, 매우 유능한 네트워크 모니터링 전략을 갖추고 있지만 애플리케이션은 알 수 없는 블랙박스인 회사를 많이 보았습니다. 대부분의 조직이 다른 것을 변경하는 것보다 애플리케이션을 더 자주 변경하기 때문에 애플리케이션의 성능에 대한 가시성이 매우 중요하다는 것을 의미하기 때문에 항상 이상하게 느껴집니다.
많은 팀이 애플리케이션 모니터링이 너무 어렵거나 고도로 전문적인 기술이 필요하다고 생각하기 때문이라고 생각합니다. 다행히도 두 가지 모두 사실이 아니며, 이 장에서는 애플리케이션에 대한 높은 가시성을 확보하는 데 도움이 될 것입니다.
메트릭으로 앱 계측하기
모니터링에서 할 수 있는 가장 강력한 작업 중 하나 는 가장 간과되는 작업 중 하나인 자체 애플리케이션 계측이기도 합니다. 왜 이렇게 해야 할까요? 앱에는 성능에 대한 수많은 귀중한 정보가 있으며, 이 중 많은 정보를 통해 사후 대응에서 사전 예방적 성능 유지로 전환할 수 있습니다.
흔히 앱에 메트릭을 추가하는 것이 어렵고 시간이 많이 걸린다는 우려를 많이 들었지만, 이는 사실이 아닙니다. 모든 일이 그렇듯이 간단하게 시작하는 것이 핵심입니다. 데이터베이스 쿼리에 걸리는 시간을 측정하는 것은 어떨까요? 또는 외부 공급업체 API가 응답하는 데 걸리는 시간은 얼마나 걸리나요? 또는 하루 동안 얼마나 많은 로그인이 발생하나요?
앱 계측을 시작하면 중독성이 생깁니다. 앱 지표는 다양한 분야에 매우 유용하기 때문에 왜 더 일찍 시작하지 않았는지 후회하게 될 것입니다.
애플리케이션 성능 모니터링(APM) 도구에 대한 추가 정보
애플리케이션 성능 모니터링 (APM) 도구에는 많은 도구가 있습니다. 앱에 에이전트나 라이브러리를 추가하면 앱의 애플리케이션 성능, 느린 쿼리 및 워터폴 차트에 대한 모든 종류의 정보를 자동으로 찾아낼 수 있다는 것이 그 아이디어입니다. 이 모든 것, 그리고 종종 그 이상의 기능을 제공한다는 점에서 매력적인 제안이며 틀린 말은 아닙니다.
이러한 도구에는 앱이나 앱의 비즈니스 로직에 대한 컨텍스트가 전혀 없습니다. 특정 쿼리에 소요된 시간을 보여주는 멋진 폭포수 차트를 볼 수는 있지만, 중요한 워크플로 경로의 지연 시간이나 앱이 수행하는 작업에 대한 컨텍스트가 필요한 다른 어떤 정보도 알려주지 않습니다.
APM 도구가 나쁘지는 않지만, 그 내재적 한계를 이해해야 합니다.
이 책에서 특정 도구에 대해 이야기하지 않겠다고 말씀드렸지만 예외도 있습니다. StatsD ( )는 다양한 상황에서 사용하기 쉽기 때문에 그 중 하나입니다. 또한 앱을 계측하는 것이 얼마나 간단한지 완벽하게 보여줍니다.
StatsD는 코드 내부에 메트릭을 추가하는 데 사용되는 도구입니다. 2011년에 Etsy에서 만든 StatsD는 사용 편의성과 유연성으로 인해 최신 모니터링 스택의 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access