Nginx 최적화 - 로그 분할
4494 단어 로그 관리 nginx네트워크 구조
1. 기업 서버 의 로그 파일 이 대회 에 지나 치면 다음 과 같은 문 제 를 가 져 옵 니 다. 1. 너무 큰 로그 파일 을 조회 하 는 것 은 개발 과 운영 에 매우 불편 합 니 다. 특히 야근 자 들 이 힘 든 상황 에서 더욱 설상가상 입 니 다.2. 아주 오래 전의 로그 파일 은 거의 가치 가 없 었 지만 손 으로 정리 하 는 것 은 너무 번 거 로 웠 습 니 다.이 럴 때 로그 분할 을 자동 으로 할 수 있 는 솔 루 션 이 필요 합 니 다. 분 단 된 로 그 는 '깨끗 하 다' 는 것 뿐만 아니 라 로 그 를 정기 적 으로 정리 할 수 있 습 니 다.
실험 하 다.
2. Nginx 서비스 1 을 컴 파일 하고 원 격 으로 Windows 의 소스 패 키 지 를 가 져 오 며 Linux 에 마 운 트 합 니 다.
[root@localhost ~]# smbclient -L //192.168.235.1
Enter SAMBA\root's password:
Sharename Type Comment
--------- ---- -------
LNMP Disk
[root@localhost ~]# mkdir /abc
[root@localhost ~]# mount.cifs //192.168.235.1/LNMP /abc
Password for root@//192.168.235.1/LNMP:
[root@localhost ~]# ls /abc
Discuz_X3.4_SC_UTF8.zip nginx-1.12.0.tar.gz php-7.1.10.tar.bz2
mysql-boost-5.7.20.tar.gz nginx-1.12.2.tar.gz php-7.1.20.tar.gz
2. 압축 해제 팩
[root@localhost ~]# cd /abc
[root@localhost abc]# tar zxvf nginx-1.12.0.tar.gz -C /opt
[root@localhost abc]# ls /opt
nginx-1.12.0 rh
3. 컴 파일 패키지 설치
[root@localhost abc]# cd /opt
[root@localhost opt]# yum install -y \
> gcc \ //C
> gcc-c++ \ //c++
> pcre-devel \ //pcre
> zlib-devel //
4. 프로그램 사용 자 를 만 들 고 Nginx 서비스 관련 구성 요 소 를 설정 합 니 다.
[root@localhost opt]# useradd -M -s /sbin/nologin nginx
// nginx,
[root@localhost opt]# cd nginx-1.12.0/
[root@localhost nginx-1.12.0]# ./configure \
// nginx
> --prefix=//usr/local/nginx \
//
> --user=nginx \
//
> --group=nginx \
//
> --with-http_stub_status_module
//
5. 컴 파일 및 설치
[root@localhost nginx-1.12.0]# make && make install
6. Nginx 서비스 시작 스 크 립 트 를 최적화 하고 명령 소프트 링크 만 들 기
[root@localhost nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
// nginx
[root@localhost nginx-1.12.0]# systemctl stop firewalld.service
//
[root@localhost nginx-1.12.0]# setenforce 0
//
[root@localhost nginx-1.12.0]# nginx
// nginx
[root@localhost nginx-1.12.0]# netstat -ntap | grep 80 // 80 ,
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 7520/nginx: master
7. systemctl 관리 nginx 스 크 립 트
[root@localhost ~]# vim /lib/systemd/system/nginx.service ##
[Unit]
Description=nginx ##
After=network.target ##
[Service]
Type=forking ##
PIDFile=/usr/local/nginx/logs/nginx.pid ##PID
ExecStart=/usr/local/nginx/sbin/nginx ##
ExecReload=/usr/bin/kill -s HUP $MAINPID ## PID
ExecStop=/usr/bin/kill -s QUIT $MAINPID ## PID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[root@localhost ~]# chmod 754 /lib/systemd/system/nginx.service ##
[root@localhost ~]# systemctl stop nginx.service ## nginx
[root@localhost ~]# systemctl start nginx.service ##
8. 로그 분할 스 크 립 트 작성
[root@localhost nginx-1.12.0]# vim fenge.sh
#!/bin/bash
#Filename:fengge.sh ##
d=$(date -d "-1 day" "+%Y%m%d" ) ## , , "2019.11.11"
logs_path="/var/log/nginx" ##
pid_path="/usr/local/nginx/logs/nginx.pid" ##Nginx
[ -d $logs_path ] || mkdir -p $logs_path ## ,
mv /usr/local/nginx/logs/access.log ${logs_path}/test.com-access.log-$d
## ,
kill -USR1 $(cat $pid_path) ## ,
find $logs_path -mtime +30 | xargs rm -rf ## 30 ( 30 ) ,xargs
[root@localhost nginx-1.12.0]# chmod +x fenge.sh ##
[root@localhost nginx-1.12.0]# ./ fenge.sh
[root@localhost nginx-1.12.0]# ls /var/log/nginx
test.com-access.log-20191112 ##
[root@localhost nginx-1.12.0]# ls /usr/local/nginx/logs
access.log error.log nginx.pid ## Nginx , access.log
이 방법 은 기업 서버 로그 관리 업 무 를 크게 강화 하여 효율 을 높 였 습 니 다!!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Pytorch 딥러닝 프레임워크 YOLOv3 목표 탐지 학습 노트(二) - 네트워크 프레임워크를 만드는 층이 파일은 YOLO 네트워크를 만드는 코드를 포함하고 util을 사용합니다.py 파일에 포함된 여러 가지 유용한 함수 코드는darknet에 대한 것입니다.py 지원, 이 두 파일을 디렉터리에 넣기 공식 코드(c 언어...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.