• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
정보

Goaccess 로 Nginx Proxy Manager 실시간 대시보드 만들기.

달소 달소 1322

5

7

안녕하세요. 달소입니다.

 

앞서 Swag의 로그분석 대시보드를 분석하면서 비슷한 툴인 Nginx Proxy Manager(NPM)에서도 비슷한게 있을것같아서 구글링 하던중에 발견했습니다.

 

Docker로 간단하게 구축이 가능하기때문에 관심있으신분들은 한번 해보시면 좋을듯합니다~
먼저 완성본 사진을 간단하게 보여드리면 NPM으로 들어오는 요청들의 로그에 대해서 실시간으로 대시보드를 구축해줍니다.

image.png.jpg

이런식으로 보여줍니다.

보여주는 정보도 꽤많습니다.

접근 브라우저,접근 ip등 nginx 액세스 로그로 나오는거의 모든것들을 대시보드 형태로 보여줍니다.

 

image.png.jpg

image.png.jpg

 

소개는 이쯤하고..  한번 진행해보겠습니다.

 

구축 환경

Ubuntu 20.04 LTS
Docker
NPM 공식이미지 - https://hub.docker.com/r/jc21/nginx-proxy-manager

 

Goaccess 이미지 -  https://hub.docker.com/r/gregyankovoy/goaccess

 

NPM의 로그 저장 경로를 미리 확인해줍니다.

저같은경우 /data/npm/data/logs경로에 로그를 저장하고있습니다.

image.png.jpg

 

여기서 저장되는 로그들은 NPM에서 proxy host로 설정한 호스트들의 로그입니다.
저같은경우 현재 11개의 프록시 호스트를 사용하고있어서 11개를 모두 넣어보겠습니다.

 

Goaccess 컨테이너 생성하기

log의 경우 NPM의 로그를 사용하기때문에 따로 저장할 필요는 없고 config를 볼륨매칭 시켜줄 디렉터리만 만들어주겠습니다.

mkdir -p /data/goaccess/config

 

컨테이너는 아래 명령어로 생성합니다.

docker run --name goaccess -p 7889:7889 -v /data/npm/data/logs:/opt/log -v /data/goaccess/config:/config -d gregyankovoy/goaccess

image.png.jpg

 

최초실행시에는 위처럼 이미지를 받아서 실행하게 되는데요.

여기서 config 파일을 수정해줘야되기때문에 해당경로로 먼저 이동해줍니다.

 

cd /data/goaccess/config/

보시면 기본 goaccess.conf 파일이있는데 이건 파일을 이동해주시고 새로 파일을 만들어주실것입니다.

mv goaccess.conf goaccess.conf.bak

image.png.jpg

 

그리고 vi 편집기로 새로운 conf 파일을 만들어줍니다.

vi goaccess.conf

 

내용은 아래처럼 작성해주시면됩니다. 사용하고싶은 access log수에 따라서 더 추가해주시거나 빼주시면됩니다.



time-format %H:%M:%S
date-format %d/%b/%Y
log_format [%d:%t %^] - %s %^ - %m %^ %v "%U" [Client %h] [Length %b] [Gzip %^] [Sent-to %^] "%u" "%R"
real-time-html true
log-file /opt/log/proxy-host-1_access.log
log-file /opt/log/proxy-host-2_access.log
log-file /opt/log/proxy-host-3_access.log
log-file /opt/log/proxy-host-4_access.log
log-file /opt/log/proxy-host-5_access.log
log-file /opt/log/proxy-host-6_access.log
log-file /opt/log/proxy-host-7_access.log
log-file /opt/log/proxy-host-8_access.log
log-file /opt/log/proxy-host-9_access.log
log-file /opt/log/proxy-host-10_access.log
log-file /opt/log/proxy-host-11_access.log


image.png.jpg

수정을 완료하셨으면 esc 를 누르시고 :wq 로 저장해줏세요.

이제 컨테이너를 재시작 시키겠습니다.

image.png.jpg

 

이제 포트매핑해준 ip:7889 포트로 접근해주세요.

image.png.jpg

 

이렇게 대시보드가 잘 나오시면 성공입니다~

 

+++++
프록시마다 로그명을 부여해주고싶으시다면 NPM의 프록시 호스트 셋팅에서 아래처럼 로그경로를 지정해주셔도 됩니다.
 

image.png.jpg

신고공유스크랩
7
뻘짓의초심자 2022.05.01. 02:51
ewdgqqd1224

그럴 것으로 보입니다. 공식 이미지는 amd만 지원하고 동일한 이름의 도커는 arm을 지원하나 제대로 된 문서가 보이지 않는군요...

profile image
달소 글쓴이 2022.05.01. 13:14
게르노

서비스용도보다는 이미생성된 로그를 가지고 모니터링하는거라 괜찮을듯합니다ㅎㅎ

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
가이드 나만의 구독 관리하기 Wallos 서버 구축하기. 8 달소 2일 전17:19 242 +2
후기 네트워크 구성도와 상세 스펙 공유 3 맘맘 2일 전16:17 240 +1
정보 NPM에서 Tailscale IP로 역방향 프록시 안 되는 문제 해결 방법 2 fenfen 2일 전11:36 148 +5
3928 잡담
image
EXP 10분 전21:58 12 0
3927 잡담
normal
newsted1 1시간 전20:53 18 0
3926 질문
normal
랩실뚜벅이 1일 전16:42 214 0
3925 잡담
image
달소 2일 전17:44 322 0
3924 가이드
image
달소 2일 전17:19 242 +2
3923 후기
image
맘맘 2일 전16:17 240 +1
3922 정보
normal
fenfen 2일 전11:36 148 +5
3921 질문
normal
eond 2일 전09:41 131 0
3920 질문
normal
초보입니다ㅠㅠ 3일 전12:41 156 0
3919 질문
normal
블랙앤해적 4일 전21:41 159 0
3918 잡담
image
kmw_ 4일 전19:42 244 0
3917 잡담
image
감자탕 4일 전17:03 265 0
3916 질문
image
똥쓰똥쓰 5일 전17:43 245 0
3915 잡담
normal
ljr10 5일 전16:55 183 0
3914 질문
image
EXP 5일 전15:32 100 0
3913 질문
image
감자탕 5일 전15:31 172 0
3912 가이드
image
klayf 6일 전14:16 282 +14
3911 후기
image
kmw_ 6일 전14:12 221 0
3910 질문
image
동도리군 6일 전13:23 289 0
3909 잡담
normal
SNFAIUWQ 24.05.11.21:40 97 0