linux Journalctl은 로컬 시스템 로그 대신 지정된 입력 파일을 읽습니다.

linux Journalctl은 로컬 시스템 로그 대신 지정된 입력 파일을 읽습니다.

나는 이것이 먼 길이라는 것을 안다. 내가 찾을 수 있는 매뉴얼 페이지에서 뭔가가 누락되었습니다.

로그 서버(syslog-ng)에 대한 원격 이벤트/시스템 로깅을 설정했습니다. 좋은 결과.

자체 로그 디렉터리가 있으며 각 호스트는 해당 IP로 레이블이 지정된 자체 로그 파일을 생성합니다(아래).

참고: Journalctl 구성 또는 syslog-ng 구성을 변경하는 몇 가지 예를 찾았습니다. 내 생각에 이것은 로깅을 엉망으로 만든다. 시스템 변경에 적합하지만 데이터를 보기 위해 일부 스크립트를 실행하는 것만으로는 충분하지 않습니다.

위치는 다음과 같습니다:

/var/로그/원격:

원격 시스템 로그_192.168.0.163.log 원격 시스템 로그_192.168.0.17. 원격 시스템 로그_192.168.0.18
. .200.로그

이것은 모두 좋습니다. 즉:

2월 23일 09:54:41 192.168.0.4 smartd[840]: 장치: /dev/sdc [SAT], SMART 사용 속성: 194 온도_섭씨가 64에서 65로 변경되었습니다.

IP 192.168.0.4는 내가 Journalctl을 실행하는 로컬 컴퓨터이자 로그 서버이기도 합니다.

이제 나는 그들을 처리해야 합니다.

Journalctl은 좋은 선택인 것 같으며 관심 있는 레코드를 추출하는 스크립트를 작성할 수 있습니다.

Journalctl -o json-pretty -u smartd

문제 없다

이제 나는 뭔가를 놓치고 있다

Journalctl은 /var/log/syslog를 읽습니다.

다른 로그 파일을 사용하도록 지시하는 방법을 찾을 수 없습니다.

--root 및 --file과 함께 -D/var/log/remote 옵션을 시도했습니다. 하지만 /var/log/syslog만 읽습니다. 이는 원격 PC에서 전송된 데이터가 아니라 로컬 PC입니다.

Journalctl은 로그 파일에서 데이터를 추출하는 데 적합하고 awk 또는 grep, cut 등과 같이 생각할 수 있는 다른 옵션보다 훨씬 쉽기 때문에 누군가 나에게 몇 가지 지침을 줄 수 있습니까?

시스템 로그 파일에서 레코드를 추출하는 좋은 방법에 대한 제안을 보내주셔서 감사합니다.

관련 정보