안녕하세요.
제가 알기로 Logstash에서는 sincedb라는 것이 캐시 역할을 해서 로그 수집의 대상이 되는 로그 파일에서 어디서부터 읽어야 하는지 뭐 이런 정보를 관리해준다고 알고있는데 filebeat에도 그런 기능이 있는 건가요??
저는 현재 combined apache 형식의 sample log data를 파일에 저장해두고 elk stack 파이프라인을 구성중인데 이런 캐시 기능 때문인지 한 번 실행한 (데이터를 읽은) 파일을 index 이름만 바꿔서 다시 올리려고 하니 실행이 되지 않더라구요. 원래 e/s, kibana, logstash로만 구성해서 사용할때도 동일한 문제가 발생했는데, logstash의 input file plugin 옵션 중에 sincedb_path를 dev/null로 설정하니까 이런 로그 포인터?? 를 초기화 시켜주고 같은 파일도 여러번 읽을 수 있게 되더라구요.
혹시 filebeat를 사용할 때도 이렇게 포인터를 초기화시켜줘서 같은 파일을 여러번 올릴 수 있게 할 수 있을까요??
filebeat 홈 디렉토리의 data 디렉토리 아래에 registry 라는 파일을 삭제하시면 됩니다.
정말 감사합니다 ㅎㅎ 근데 혹시 같은 파일을 경로를 다르게하면 registry에서 다른 파일로 인식을 하나요??
예를 들어 /home/sample/abc 이렇게 있는 abc 파일을 /home/sample/sample2/abc 이렇게 파일은 복사하고 경로만 바꿔서 실행하면 다른 파일로 인식을 하나요 같은 파일로 인식을 하나요??
logstash에서 sincedb를 살펴보니 무슨 뒤에 abc1, abc2, abc3 이런식으로 로그 파일명이 변경되는 것도 logstash에서 다 인식하고 위치를 기록한다고 봤는데 filebeat에서도 그런가 싶어서요 ㅎㅎ
사실 logstash sincedb, filebeat registry 둘 다 document를 보긴했는데 이해가 잘 안되서요 ㅠㅠ 컴퓨터 초보자라 죄송합니다..
filebeat registry 파일을 까서 한번 직접 보세요. 내용 쉽게 알아볼 수 있습니다. 파일 패스하고 몇번째 줄 까지 읽었는지 등의 플래그가 기록되어 있습니다.
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.