문제

내가 필요로 하는 간단한 방법을 모니터링은 여러 텍스트에 로그파일에 분산의 수 HP-UX 서버입니다.그들은 텍스트와 XML 에서 로그 파일을 여러 가지이 시스템입니다.현재 우리는 그냥 ssh 서버 사용 tail-fgrep, 지만,지 않는 규모가 많은 경우 로그니다.

이후 로그는 다른 형식으로 그냥 폴더에 파일을(자동으로 회전할 때 특정 크기)요 모두들을 수집하고 원격으로 구문 분석을 각각 다릅니다.

내 초기 생각하는 간단하는 데몬 프로세스는 실행할 수 있습에서 사용하여 각 서버 사용자 지정한 파일에 대한 독자 각자 파일 형식으로 구문 분석에는 일반적인 형식으로 내보낼 수 있는 네트워크를 통해 소켓에.다른 뷰어 프로그램 실행이 될 것입니다 로컬에 연결하는 이 소켓을 보여 로그 분석에서는 몇 가지 간단한 탭이 있는 GUI 를 집계합니다.

하는 로그 형식을 선택해야 합니까?로 변환하려고 하면 나는 그것을 구현하기 위해 이 방법은?

은 거기에 몇 가지 다른 쉬운 방법은?해야 하는 시도를 번역하는 로그 파일을 log4j 사용할 형식을 가진 또는 있는 더 나은 로그를 시청자에 연결할 수 있는 원격 sockets?을 사용할 수 있었는 십시오 제안서 다른 로그 질문?이 massivly 분산 시스템 고 변화의 현재 로깅 구현에 대한 모든 응용 프로그램을 사용하 UDP 방송 또는 넣어 메시지에 JMS 큐 옵션을 선택하지 않습니다.

도움이 되었습니까?

해결책

옵션:

  1. 사용 SocketAppender 를 보내는 모든 로그를 1 직접 서버.(이 serverly 을 방해 성능과 하나가 추가의 오류를 방지합니다.)
  2. 스크립트를 사용하여 집계 데이터입니다.내가 사용하는 scp,ssh,인증 키를 허용하는 스크립트를 얻는 데이터는 모든 서버에서 없이 로그인 프롬프트가 있습니다.

다른 팁

아마 가벼운 무게 솔루션을 위한 실시간 로그를 보고 사용하는 것입 댄서의 셸 에서 동시 모드를 tail-f:

dsh -Mac -- tail -f /var/log/apache/*.log
  • -A 는 모든 기계에 이름을 정의했에서~/.dsh/기계입니다.목록
  • C-이 동시에 실행하의 꼬리
  • -M 앞에 추가 호스트 이름을 각인 출력됩니다.

우리가 사용하여 간단한 쉘 스크립트는 다음과 같습니다.당신은 분명히 해야 그것을 조정할 다소를 말하는 그것에 대해 다른 파일은 이름을 결정하는 상자를 찾는 그러나 당신은 기본적인 생각입니다.우리의 경우 우리는 찌끼는 파일에서 동일한 위치에서 여러 상자입니다.이 필요합 ssh 인증을 통해 저장된 키를 입력하는 대신에 암호를 암호화합니다.

#!/bin/bash
FILE=$1
for box in box1.foo.com box2.foo.com box3.foo.com box4.foo.com; do
     ssh $box tail -f $FILE &
done

에 대한 마이크 펑크의 코멘트를 할 수 없는 것에 대해 을 죽이 찌끼와^C,나는 저장하는 파일에는 위의 불 multitails.sh 에 추가하려면 다음을 결합합니다.이 kill_multitails.sh 파일 는 실행이 완료되면 찌끼와 그것은 자신을 삭제합니다.

# create a bash script to kill off 
# all the tails when you're done
# run kill_multitails.sh when you're finished

echo '#!/bin/sh' > kill_multitails.sh
chmod 755 kill_multitails.sh
echo "$(ps -awx | grep $FILE)" > kill_multitails_ids
perl -pi -e 's/^(\d+).*/kill -9 $1/g' kill_multitails_ids
cat kill_multitails_ids >> kill_multitails.sh
echo "echo 'running ps for it'" >> kill_multitails.sh
echo "ps -awx | grep $FILE" >> kill_multitails.sh
echo "rm kill_multitails.sh" >> kill_multitails.sh
rm kill_multitails_ids


wait

Logscape -다음과 같 splunk 지 않고 가격이 태그

multitail

" 로컬 및 원격 로그 분석 및 모니터링 도구에 대한 시스템 관리자 및 개발자입니다.
그 랩의 기능을 견본,티,꼬리,grep,ccze,그리고 메일을 하나로,일부 엑스트라와"

예를 들어.

chip-f-m0='실행'-s0='red'-m1='.*' -s1user1@remote_ip1:'/var/log/log1/var/log/log2/var/log/log3 user2@remote_ip2:'/var/log/log1/var/log/log2/var/log/log3"|egrep 실행"|==>/"

이것을 강조 표시에 빨간은 발행의-m0 패턴 pre-필터링'|실행==>/의 패턴에 있는 모든 로그 파일이 있습니다.

내가 쓴 vsConsole 에 대한 정확하게 이 목적을 쉽게 액세스하는 로그 파일을-그리고 그 응용 프로그램 모니터링 및 버전을 추적합니다.을 알고 싶은 당신이 무슨 생각합니다. http://vs-console.appspot.com/

Awstats 제공하는 perl 스크립트로 병합할 수 있는 여러 아파치 로그 파일을 함께합니다.이 스크립트하는 것이기 때문 메모리 사용량이 매우 낮고,로그 파일을 절대로드 메모리에 있습니다.내가 알고 있는 si 지 않을 정확하게 당신이 필요하지만,아마도 당신은에서 시작할 수 있는 이 스크립트를 적응하의 필요합니다.

당신이 사용할 수 있는 다양한 수신자용으로 톱(VFSLogFilePatternReceiver 꼬리를 통해 파일을 ssh,SocketReceiver,UDPReceiver,CustomSQLDBReceiver,etc.)을 집계로 로그를 하나의 탭이 기본값을 변경하여 탭을 식별자 또는 만들기'사용자 정의 식 logpanel'을 제공하여 표현과 일치하는 사건에서 다양한 원본 탭이 있습니다.

gltail-실시간 시각화의 트래픽이 서버,이벤트 및 통계와 루비,SSH 및 OpenGL 에서 여러 서버

XpoLog Java

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top