1, 준비 마스터:10.1.5.241slave01:10.1.5.242 서버 쪽과 클라이언트에 각각 rsyslog[root@master ~]# yum -y rsyslog[root@master ~]# rsyslogd -versionrsyslogd 5.8.10, compiled with: FEATURE_REGEXP: Yes FEATURE_LARGEFILE: No GSSAPI Kerberos 5 support: Yes FEATURE_DEBUG (debug build, slow code): No 32bit Atomic operations supported: Yes 64bit Atomic operations supported: Yes Runtime Instrumentation (slow code): NoSee http://www.rsyslog.com for more information.2. 구성 프로파일은 다음과 같습니다. [root@master ~]# egrep -v '^#|^$'/etc/rsyslog.conf$ModLoad imuxsock # provides support for local system logging(e.g. via logger command) $ModLoad imklog # provides kernel logging support (previously done by rklogd) $ModLoad immark # provides --MARK-message capability $Modad Loudp이 ucp 연결을 엽니다.ucp 로그 전송 $UDPServerRun 514$ModLoad imtcp를 통해 tcp 연결을 열고 tcp 로그 전송 $InputTCPServerRun 10514$ActionFileDefaultTemplate RSYSLOGTraditionalFileFormat$IncludeConfig/etc/rsyslog.d/*.conf*.info;mail.none;authpriv.none;cron.none /var/log/messagesauthpriv.* /var/log/securemail.* -/var/log/maillogcron.* /var/log/cron*.emerg *uucp,news.crit /var/log/spoolerlocal7.* /var/log/boot.log 예1, 간단한 설정: 모든 시스템 log를 서버 밑에 넣는/var/log/all.log 아래.구성:서버:/etc/rsyslog.conf 파일에 마지막으로 *.* 추가 /var/log/all.log[root@master ~]#/etc/init.d/rsyslog restart 클라이언트:/etc/rsyslog.conf 파일에 마지막으로 *.* 추가@@10.1.5.241:10514 tcp를 통해 전송[root@slave01 ~]#/etc/init.d/rsyslog restart 테스트:tail-f/var/log/all.log 예2, 사용자 정의 테스트, 설정: 서버:/etc/rsyslog.마지막 파일 추가:fromhost,isequal,"slave01〃/var/log/all.log #lave01에서 온 로그를 필터하여/var/log/all.log:fromhost,isequal,"slave01〃~[root@master ~]#/etc/init.d/rsyslog restart 클라이언트:*.*@10.1.5.241:514 #udp를 통해 패스 [root@slave01 ~]#/etc/init.d/rsyslog restart 테스트: [root@slave01 ~]# logger "hello world" [root@master ~]# tail -f/var/log/all.log 예 3, 사용자 정의 테스트, 설정: 서버:/etc/rsyslog.conf 파일 마지막에 local5.* 추가 /var/log/all.log #local5레벨 로그를 필터하여/var/log/all에 넣습니다.loglocal5.* ~[root@master ~]#/etc/init.d/rsyslog restart 클라이언트:local5.*@10.1.5.241:514 #udp를 통해 패스 [root@slave01 ~]#/etc/init.d/rsyslog restart 테스트: [root@slave01 ~]# logger -p local5.info "hello world"# local 5 레벨을 지정해야 합니다[root@master ~]# tail -f/var/log/all.log 예 4, 사용자 정의 테스트, 설정: 서버:/etc/rsyslog.conf 파일에 $template logfile, "/var/log/logfile%$year%%$month%$day%.log": msg,contains,"muyushan"?logfile[root@master ~]#/etc/init.d/rsyslog restart 클라이언트::msg, contains, "muyushan"@@@10.1.5.241:10514 # tdp를 통해 전송[root@slave01 ~]#/etc/init.d/rsyslog restart 테스트: [root@slave01~] # logger-t muyushan "hello world"# 로그 본문 줄마다 "muyushan"탭 추가[]root@master ~]# tail -f/var/log/all.log 예5,apache 로그 관리 설정: 서버: mkdir/data/apache/logs chown apache:apache/data/apache/logs/etc/rsyslog.conf 파일 마지막에 $template access 추가log, "%msg:2:$%"$template error_log, "%msg%" # web1-access-log $template access_log_file_web1, "/data/apache/logs/%$NOW%/access-log/web1-access_log"# web1-error-log $template error_log_file_web1, "/data/apache/logs/%$NOW%/error-log/web1-error_log" # web1-access-log if $syslogfacility-text == 'local6' and $syslogtag == 'http-access:' and $fromhost-ip == '10.1.5.241' then -?access_log_file_web1;access_log # web1-error-log if $syslogfacility-text == 'local6' and $syslogtag == 'http-error:' and $fromhost-ip == '10.1.5.241' then -?error_log_file_web1;error_log [root@master ~]#/etc/init.d/rsyslog restart 클라이언트:vim/etc/http/conf/httpd.conf에서 다음 옵션을 찾아 #CustomLog logs/accesslog combined ErrorLog logs/error_log는 이 두 가지 옵션에 각각 다음과 같은 CustomLog "|/usr/bin/logger -p local6. info -t http-access"combined ErrorLog "|/usr/bin/logger -p local6. info -t http-error"/etc/rsyslog를 추가합니다.conf 파일 마지막에 local5.* 추가 /var/log/all.log #local5레벨 로그를 필터하여/var/log/all에 넣습니다.loglocal5.* ~[root@slave01 ~]#/etc/init.d/rsyslog restart 테스트: [root@master ~]# tail -f/data/apache/logs/%$NOW%/access-log/web1-access_log[root@master ~]# tail -f/data/apache/logs/%$NOW%/error-log/web1-error_log 부록:
로그 장치(로그 유형으로 이해할 수 있음)
로그 장치/유형 설명 auth – pam에서 생성된 로그 authpriv - ssh, ftp 등 로그인 정보의 검증 정보 cron – 시간 작업 관련 kern – 코어 lpr - 인쇄 mail – 메일 mark(syslog) -rsyslog 서비스 내부 정보, 시간 표식 news – 뉴스그룹 user – 사용자 프로그램에서 생성된 정보 uucp -unix to unix copy, unix 호스트 간의 통신 local 1~7 – 사용자 지정 로그 장치
로그 레벨
위에서 아래로, 단계가 낮은 수준에서 높은 수준으로, 기록된 정보는 점점 적어지고, 자세한 설명서는 man 3 syslog 등급 설명 레벨 값 debug - 튜닝 정보가 있는 최대 로그 정보 7 info – 일반 정보의 로그, 가장 일반적인 notice – 가장 중요한 일반적인 조건에 대한 정보 warning – 경고 수준 4 err – 특정 기능이나 모듈이 제대로 작동하지 않도록 차단하는 오류 수준 crit – 전체 시스템 또는 소프트웨어 전체가 제대로 작동하지 못하도록 차단하는 심각도 수준 alert – 즉시 수정이 필요한 정보 emerg – 커널 붕괴와 같은 심각한 정보 none -아무것도 기록하지 않음
연결 기호
연결 기호 설명 .xxx xxx 레벨보다 큰 정보 .=xxx xxx와 같은 수준의 정보를 나타낸다 .!xxx xxx 이외의 등급을 나타내는 정보 예:
logger 사용 logger는 셸 명령 인터페이스로 Syslog의 시스템 로그 모듈을 사용할 수 있으며 명령줄에서 시스템 로그 파일에 직접 한 줄의 정보를 쓸 수 있습니다. logger -it error -p local5.info "hello world" -i 행마다 프로세스 ID 기록 - t 로그의 줄마다 error 탭을 추가합니다 -p 사용자 정의 로그 장치 및 구성 파일의 local5.* 지정대응, 프로필에 없습니다.info. 자신이 쓴 프로그램이라면 로그를 만드는 코드에서logger 명령으로 시스템의 로그 인터페이스로 이동해야 한다는 설명이다. 참조: 사용 설명:http://w.gdu.me/wiki/Linux/rsyslog_logrotate.html 구성 설명:http://blog.clanzx.net/2013/12/31/rsyslog.html http://www.cnblogs.com/blueswu/p/3564763.html http://www.tuicool.com/articles/Jv2eUvn
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다: