본문

IT 소식
모던 인프라에서 로그 모니터링과 분석

작성일 2023년 02월 15일

여러분은 블로그가 Web + log 가 합쳐서 생긴 단어라는 걸 아시나요? 자신의 관심사나 일상을 기록하는 개인 사이트를 블로그라고 하는데요. IT 인프라도 하루에 발생한 이력을 저장하고 있습니다.

MSA 구조의 복잡하고 대규모화된 인프라 환경에서 생산되는 엄청난 양의 기록들인 로그. 이런 환경에서 로그를 저장 및 관리하고, 이슈가 있을 때 원하는 로그를 조회하는 일은 점점 어려워지고 있습니다. 대규모의 로그를 좀 더 효율적으로 관리 및 분석할 수 있게 도움이 되는 툴 몇가지 소개하겠습니다.

로그란?

로그의 사전적 의미는 “무언가를 기록하는 행위”입니다. 우리가 IT에서 사용하는 로그는 운영 체제, 응용 프로그램, 서버 또는 네트워크 장치에서 생성된 이벤트의 기록입니다.

로그에는 사용자 입력, 시스템 프로세스 및 하드웨어 상태에 대한 데이터, 사용자와 애플리케이션 시스템 간의 통신 내역 등 시스템을 모니터링 할 수 있는 여러가지 데이터가 포함되어 있습니다. 즉 로그는 인프라 전반에 걸쳐 여러 정보를 남기는 것을 말합니다. 추후에 로그를 분석하기 위해 로그를 생성하고 저장하는 방법을 Logging(로깅)이라고 합니다.

로그를 출력하는 방법에는 프린트 함수 등을 사용해 직접 저장하는 방식과 로깅 라이브러리를 이용하는 방법이 있습니다. 보편적으로 로깅 라이브러리를 사용합니다.

로그 모니터링이란 무엇일까요?

로그 모니터링은 개발자, 운영자, 시스템 관리자 등이 기록된 로그를 지속적으로 확인하는 프로세스입니다.

로그를 모니터링 하기 위해 직접 터미널에 접속하여 tail 등의 명령어를 사용했었습니다. 하지만 클라우드와 컨테이너 환경으로 인프라의 환경이 변화함에 따라 수동으로 하나하나 로그들을 확인하는 것은 어려운 일이 되었습니다.

로그 모니터링을 좀 더 쉽게 해주는 서비스 또는 솔루션(SW)를 사용하면 분산된 로그를 한 곳으로 수집하고 시스템 성능 및 상태에 영향을 미치는 이슈가 있을 경우 경고를 발행할 수 있습니다.

애플리케이션, 서비스 및 시스템 로그를 수집하고 실시간으로 상태를 감지하여 최종 고객에게 영향을 미치기 전에 문제를 해결할 수 있도록 지원합니다.

모든 툴들이 그렇지만 로그를 모니터링 하는 것만으로 근본 원인을 파악하긴 어렵고 관련된 엔지니어들이 로그를 분석할 수 있어야 합니다.

로그 분석, 효과적으로 하려면?

로그를 수집하고 모니터링하는 것을 넘어 근본 원인을 보다 효과적으로 파악하기 위해서는 애플리케이션, 또는 서버 모니터링 등과 결합해서 분석하는 것이 좋습니다. 로그와 상호 작용하는 소프트웨어, 서비스, 애플리케이션 및 모든 인프라로부터 수집된 데이터를 하나의 모니터링 플랫폼으로 저장하고 통합 모니터링 하면 빠른 문제 해결과 애플리케이션의 성능을 최적화, 인프라 가용성을 높일 수 있습니다.

궁극적으로 로그를 포함하여 다양한 모니터링 서비스들을 이용하는 것은 빠른 문제 해결, 잠재된 문제 예측, 시스템 최적화를 위함입니다. 이는 비즈니스가 지속적으로 성장할 수 있는 기반이 됩니다.

Whatap[ Application Trace에서 Log 정보 확인, WhaTap ]

로그 모니터링 툴, 어떤 것이 있을까요?

로그 관리 툴은 로그와 애플리케이션, 리소스 정보들을 함께 모니터링 하는 경우가 더 효율적입니다. 이런 이유로 모니터링 또는 옵저버빌리티 서비스에서 함께 제공되는 경우가 많습니다.

1. ELK

ELK

ELK 스택은 Elasticsearch, Logstash, Kibana, Beat(file) 4개 오픈 소스 프로젝트로 구성된 스택을 의미하며 세 개의 머리글자를 딴 약어입니다. Elasticsearch는 검색 및 분석 엔진입니다. Logstash는 여러 소스에서 동시에 데이터를 수집하여 변환한 후 저장하는 데이터 수집 도구입니다. Kibana는 사용자가 Elasticsearch에서 차트와 그래프를 이용해 데이터를 시각화 할 수 있게 하는 도구 입니다. filebeat는 서버에 있는 다양한 종류의 로그를 전달하는 agent입니다.

ELK 스택은 설치형으로도 사용 가능하고 서비스 형태로도 이용이 가능합니다. 오픈소스를 이용해서 직접 설치하여 관리할 수도 있고 AWS에서 지원하는 ELK 스택인 opensearch로도 사용할 수 있습니다.

grok 패턴을 추가할 때 서버에 직접 접속하여 filter를 설정해야 하며 수정할 때마다 logstash 서비스를 재시작 해야합니다.

kibana에선 기본 대시보드를 여러 형태로 제공하며, 제공된 대시보드를 커스텀해서 사용할 수 있습니다. 기본으로 제공하는 대시보드 만으로 통상적인 로그 모니터링이 가능하지만 사용자 친화적이지 않은 느낌입니다. 모니터링을 위한 커스텀 대시보드가 필요한 경우 DSL 쿼리를 이용하여 정교한 설정이 가능합니다.

주요 특징
  • 미리 구성된 대시보드를 사용하여 쉽고 빠르게 시작 가능
  • dsl 쿼리를 이용한 커스텀 가능
  • 자체 구현 및 운영 가능, ELK 학습 필요

2. Sematext

sematext

Sematext는 모니터링과 로그 서비스를 제공합니다. 서버, 애플리케이션, 데이터베이스, 컨테이너, 시스템 등에서 데이터를 수집할 수 있습니다. Sematext를 사용하면 여러 데이터 소스에서 발생하는 로그를 한 곳에서 수집해 실시간으로 볼 수 있습니다.

Sematext Logs는 ELK(Elasticsearch, Logstash, Kibana)를 지원하여 클라우드에서 사용할 수 있도록 만든 서비스입니다. ELK 스택을 이용하여 로그 수집 및 인프라 관리나 비용이 많이 드는 컨설턴트 비용 없이 클라우드에서 관리할 수 있습니다.

주요 특징
  • ELK지원
  • 로그 관리와 함께 인프라 및 애플리케이션 성능 모니터링을 제공
  • 미리 구성된 대시보드 및 보고서를 사용하여 쉽고 빠르게 시작 가능

3. Datadog

Datadog

Datadog Log Management는 500개 이상의 기술의 지표와 이벤트 수집이 가능하고 여기에 태그를 지정하여 저장할 수 있습니다. Log, Metric, Trace를 하나의 VIEW로 통합하여 로그 데이터 분석이 가능합니다. 사용자가 drag-and-drop 하여 대시보드 커스터마이징 가능하고 머신 러닝 기반으로 이상 징후를 감지할 수 있습니다.

주요 특징
  • Full-observability 제공
  • 제한 없는 로그 데이터 타입
  • 데이터 수집 옵션 별 비용 편차가 발생

4. 와탭(WhaTap)

Whatap monitoring

마지막으로 설명드릴 서비스는 와탭입니다. 와탭은 Server, Application, Database, Kubernetes, URL, Cloud , Log 등 여러 모니터링 서비스를 제공하고 있습니다. 단일 모니터링 솔루션이 아닌 글로벌 서비스와 동일하게 통합 모니터링 플랫폼 형태입니다.

와탭 로그 모니터링은 와탭 서버 모니터링 또는 애플리케이션, 쿠버네티스 모니터링을 기본적으로 사용할 때 부가적으로 함께 사용할 수 있게 설계되어 있습니다. 와탭에서 지원하는 모니터링 서비스들의 데이터가 하나의 플랫폼에 저장되기 때문에 연관 분석이 쉽다는 장점이 있습니다.

예를 들어 애플리케이션 모니터링과 로그를 함께 이용하는 경우, 트랜잭션 정보 수집 시 트랜잭션 단위로 고유하게 트랜잭션ID를 발급하고, 동시에 로그를 수집하기 때문에 데이터를 수집하는 타이밍에 이미 해당 로그가 어느 트랜잭션에서 출력되었는지 연결하여 저장합니다.

연관성이 확보된 트랜잭션 트레이스와 로그를 연속선상에서 확인 가능해 분석이 쉬워집니다.

기능 외 서비스 지원 면에서도 국내 회사다보니 채팅/이메일/전화 등으로 실시간 문의가 가능합니다. 가격 면에서는 데이터 저장 비용 없이 이벤트 건수로 계산되어 다른 모니터링 서비스들과 비교했을 때 저렴합니다. 외산 솔루션들은 공시된 가격 외 데이터 수집하는 옵션에 따라 예상보다 이용료가 증가하는 경우가 있는데 와탭의 경우 공시된 금액 그대로 과금 됩니다.

주요 특징
  • 와탭의 기존 서비스에 옵션 형태로 로그 모니터링 이용
  • 수천 대의 서버 및 컨테이너에서 발생하는 로그를 통합하여 조회, 검색 가능
  • 애플리케이션과 로그를 통합 모니터링 하면 이슈 발생 시 더욱 빠르고 정확하게 원인 추적 가능
  • 이벤트 건수 만으로 과금, 저렴한 사용료 (100만 라인당 50원, 1일 100만 로그 이하 무료)
  • 실시간 채팅, 메일, 전화 문의 가능

마치며

Modern 인프라 환경에서 수집되는 로그의 양은 과거와는 비교할 수 없게 압도적인 사이즈 입니다. 로그 수집과 분석이 중요하긴 하지만 수집된 데이터 간 의미있는 연결을 찾을 수 없다면 로그 수집을 위해 들어가는 비용에 비해 얻는 효과는 미미할 수 있습니다. 로그 분석을 위한 도구, 트레이스를 위한 도구, 지표를 위한 도구를 개별적으로 구축한다면 문제를 해결 할 수 있는 의미있는 연결은 찾기 어려워지고 시스템의 복잡성은 더 높아질 것입니다.

하나의 모니터링 플랫폼에서 Log, Trace, Mertic를 통합하여 관리하여 근본 원인을 빠르게 찾고 시스템 옵저버빌리티를 확보하기를 기대합니다.

서비스 성능관리는 와탭 애플리케이션 모니터링으로!
와탭 무료로 시작하기
오은미[email protected]
Marketing TeamTeam Leader

지금 바로
와탭을 경험해 보세요.