여러개 서버의 로그 동시 확인하기 - multitail

2021. 10. 11. 14:13·Linux (Ubuntu based)/Shell Scripting
반응형

운영 환경에서 Multitail을 활용한 효율적인 로그 관리

운영 환경에서 장애가 발생했을 때, 서버에 직접 접속하여 애플리케이션 로그를 확인해야 하는 경우가 종종 있습니다. 이상적인 환경에서는 ELK Stack(Elasticsearch, Logstash, Kibana)과 같은 로그 관리 도구가 이미 설치되어 있어 로그를 손쉽게 확인할 수 있습니다. 하지만 때때로 서버에 직접 접속하여 로그를 확인해야 할 때가 있는데, 이럴 때 유용하게 사용할 수 있는 도구가 바로 multitail입니다.

Multitail이란?

Multitail은 여러 개의 로그 파일을 동시에 실시간으로 모니터링할 수 있는 터미널 기반의 도구입니다. 이를 통해 여러 서버나 여러 로그 파일을 하나의 창에서 효율적으로 관리할 수 있습니다.

일반적인 로그 확인 절차

보통 다중 서버에서 애플리케이션 로그를 확인할 때는 다음과 같은 과정을 거칩니다:

  1. 서버에 SSH 접속
  2. ssh server1
  3. 로그 파일 실시간 모니터링
  4. tail -f <로그파일 위치>

이 과정을 여러 서버에 대해 반복하면서 여러 터미널을 띄워놓아야 하는 번거로움이 있습니다.

Multitail을 활용한 효율적인 로그 확인

multitail을 사용하면 위의 과정을 단순화할 수 있습니다. 하나의 명령어로 여러 서버의 로그를 동시에 모니터링할 수 있습니다.

다중 서버의 로그 모니터링

다중 서버에서 애플리케이션 로그를 확인할 때는 다음과 같은 명령어를 사용합니다:

multitail -l "ssh server1 tail -f /path/to/logfile1" \
          -l "ssh server2 tail -f /path/to/logfile2" \
          -l "ssh server3 tail -f /path/to/logfile3"
  • -l 옵션을 사용하여 각 서버에 대한 SSH 접속 및 로그 파일 모니터링 명령을 추가합니다.
  • 새로운 서버가 추가될 때마다 -l 옵션을 추가하여 연결할 수 있습니다.

로컬 파일의 동시 모니터링

로컬 시스템 내에서 서로 다른 여러 로그 파일을 확인하고자 할 때는 더욱 간단하게 사용할 수 있습니다:

multitail /path/to/logfile1 /path/to/logfile2 /path/to/logfile3
  • 단순히 모니터링하고자 하는 로그 파일의 경로를 나열하면 됩니다.

Multitail의 주요 기능

  • 컬러 코딩: 서로 다른 로그 파일을 구분하기 위해 다양한 색상을 적용할 수 있습니다.
  • 필터링 및 검색: 실시간으로 로그를 필터링하거나 특정 패턴을 검색할 수 있습니다.
  • 윈도우 분할: 하나의 터미널 창을 여러 개의 창으로 분할하여 동시에 여러 로그를 볼 수 있습니다.

결론

운영 환경에서 로그 관리는 매우 중요한 작업입니다. ELK Stack과 같은 전문적인 로그 관리 도구가 있는 것이 이상적이지만, 상황에 따라 서버에 직접 접속하여 로그를 확인해야 할 때도 있습니다. multitail은 이러한 상황에서 여러 서버나 여러 로그 파일을 효율적으로 모니터링할 수 있게 해주는 강력한 도구입니다. 이를 활용하여 로그 관리의 효율성을 크게 향상시킬 수 있습니다.

반응형

'Linux (Ubuntu based) > Shell Scripting' 카테고리의 다른 글

리눅스 시스템에서 용량 사용량 명령어  (0) 2021.10.11
'Linux (Ubuntu based)/Shell Scripting' 카테고리의 다른 글
  • 리눅스 시스템에서 용량 사용량 명령어
Ethan Kang
Ethan Kang
Digital nomad + Software Engineer
    반응형
  • Ethan Kang
    Software Engineer Ethan
    Ethan Kang
  • 전체
    오늘
    어제
    • Programming (105)
      • Java (22)
        • Spring Framework (6)
        • Spring (8)
        • Spring Security (0)
        • JPA (3)
        • MyBatis (1)
        • Servlet, JSP (2)
      • DevOps (4)
        • Kubernetes (2)
        • Docker (1)
        • Terraform (0)
        • Jenkins (0)
        • Bazel (1)
      • Front-End (18)
        • ReactJS (0)
        • Typescript (3)
        • JQuery (1)
        • Java Script (13)
        • RxJS (0)
        • CSS (1)
      • Messaging Queue (1)
        • Kafka (1)
      • Linux (Ubuntu based) (8)
        • Ubuntu (0)
        • CentOS (2)
        • Shell Scripting (2)
      • PHP (5)
        • Laravel (2)
        • PHP 문법 (3)
      • Go (1)
        • Basics (1)
      • Python (16)
        • Flask (1)
        • Django (4)
      • App Development (4)
        • Android (1)
        • Cordova (0)
        • React Native (0)
        • Hybrid Programming (2)
        • IOS (1)
      • Database (4)
        • SQL (0)
        • My SQL (4)
        • MongoDB (0)
      • Shader Programming (0)
      • Tools (5)
        • GIT (2)
      • C# (3)
        • ASP.NET MVC (2)
        • CSharp 파헤치기 (1)
      • 서평 (1)
      • ETC (4)
        • C++ (0)
        • Geo Server (0)
        • NodeJS2 (0)
        • Ruby (2)
        • Elastic Search (0)
        • Camera (0)
        • Open Source (2)
        • WebVR (0)
      • 소프트웨어 이론 (2)
        • TDD (1)
        • Architecture (1)
        • WEB DEV (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

    • 컬러스크립터
  • 공지사항

    • 좋은 프로그래머가 되는 24가지 방법
  • 인기 글

  • 태그

    이미지 #jsp
    spring
    java
    자바
    mysql데이터복구
    mysql
    django #장고
    스프링
    JPA
    VersionControl
    데이터베이스캐쉬
    psr-4
    Python
    N+1
    Kotlin
    autoloading
    mybatis
    데이터베이스
    db
    스프링데이타
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Ethan Kang
여러개 서버의 로그 동시 확인하기 - multitail
상단으로

티스토리툴바