front react 서비스 ELK로 로그 모니터링하기?

Daeun Jung·2023년 12월 5일
0

research

목록 보기
10/10

spring backend 서비스 logstash 연동분석

  1. 서비스 내 logs 파일 생성 (logback.xml 설정)
  2. filebeat.yml 설정대로 로그파일 읽어와 logstash 서버에 전송
filebeat.inputs:
- type: log
  enabled: true

  paths:
    #- elasticsearch
    #- c:\programdata\elasticsearch\logs\*
    #- D:\dev\git\next\PI\*\data\logs\json\*
    - /data/aip/apps/*/logs/json/*
# The Logstash hosts
  hosts: ["172.16.0.xxx:xxxx"]
  1. ELK의 logstash는 해당 로그파일 소스에서 데이터 수집, 가공한 뒤 elastic search에 전달

react front 서비스는 어떻게 로그를 전달할 것인가?

  1. backend와는 다르게 전달해야 한다. react는 클라이언트 측 javascript라이브러리이기 때문에 로그 모니터링 방법은 전통적인 java 백엔드 서비스와는 다름.
  2. react 애플리케이션에 로그를 생성하기 위해 로그 라이브러리를 import 한 뒤
  3. logstashHttpLogger와 같은 라이브러리를 이용해 Logstash 서버에 로그를 전송할 수 있다.
  4. 파일시스템에 직접 로그 파일을 생성하고 그 파일을 읽어가는 것은 불가능하다. 클라이언트 사이드에서는 주로 브라우저 환경에서 제공하는 로깅 매커니즘을 활용하는 것이 일반적. 브라우저에서는 보안 및 프라이버시 관련 이유로 로컬 파일 시스템에 접근하는 것이 제한되어 있다.
  5. 그럼 실시간 로그만 조회가 되는건지? 아니면 이전 며칠 데이터 관리할 수 있는 방법이 있는지..?
  6. 서버를 짜서 react가 서버로 로그를 보내면, 서버가 파일을 생성하도록 개발??!?
profile
백엔드 개발자입니다 :)

2개의 댓글

comment-user-thumbnail
2023년 12월 5일

잘 보고 갑니다!

1개의 답글