2016-10-20 7 views
0

모든 요일에 지정된 시간 범위 (08:00 - 11:00) 내에 생성 된 로그 메시지 만보고 싶습니다.Linux : journalctl

내가 사용하는 경우 :

journalctl --since 08:00 --until 11:00 

그것은 단지 현재 일에서 로그를 표시합니다.

아이디어가 있으십니까?

답변

0

우선 - 귀하의 journalctl 로그 파일은 어디에 있습니까? 기본 journalctl은 시스템 시작 이후 로그를 수집합니다.

기본적으로 로그 파일은 /var/log/journal입니다. 이 디렉토리는 /etc/systemd/journald.conf 저장 = 지속적인를 설정하고 실행 존재하지 않는 경우 systemctl 다시 시작은 systemd-journald.

그리고 journalctl 모든 일에 모든 메시지/이벤트를 저장하거나 시스템이 설정 저장 일의 몇 일에서 로그를 수집 할 때이 방법으로 journalctl에서 몇 가지 흥미로운 정보를 그릴 수있을 때 :

# Define year 
year="2016" 

# Defines the month in which you want to search 
months=(08 09 10) 

for i in "${months[@]}" ; do 

    # To set a range of days: 14 - 20 
    for j in `seq 14 20` ; do 
     journalctl --since "${year}-${i}-${j} 08:00:00" --until "${year}-${i}-${j} 11:00:00" >> /tmp/journal.${year}-${i}-${j}.log 
    done 

done 

1에서 9까지의 요일을 확인하려면 0 (01, 02, 03, ..., 09)을 추가하는 메커니즘을 추가해야 할 것입니다.

이것은 예이므로 필요에 맞게 조정해야합니다.