커널 로그에서 타임스탬프 형식을 변경할 수 있는 방법이 있습니까?
지금과 마찬가지로 2012-08-27T8:54:35.939421+03:00
확인해 보니 sysctl -a | grep log
아무 것도 나오지 않았습니다.
답변1
아니요, 의 커널 코드를 참조하세요 kernel/printk.c
. 다음과 같이 하드코딩되어 있습니다.
sprintf(tbuf, "[%5lu.%06lu] ", (unsigned long) t, nanosec_rem / 1000)
당신이 할 수 있는 일은 해당 타임스탬프를 활성화/비활성화하는 것뿐입니다. 모든 읽기 /proc/kmsg
(syslog, klog...)에 타임스탬프 자체를 추가할 수 있습니다.
답변2
/var/log/messages
및 에서는/var/log/syslog
HRTS(Human Readable Timestamp)로 자동 변환됩니다.이를 사용하여 커널 링의 HRTS 형식을 반환합니다
-T
.dmesg
이것을 봐주세요man dmesg
.
당신이 정말로 원하는 것을 얻기 위해 cron 스크립트를 만들 수 있습니다:
매초$PERIOD
,dmesg --ctime --read-clear >> mymessagesHRTS.log
다음을 사용하는 것을 고려할 수 있습니다. (
dmesg --console-off
dmesg --ctime --decode --show-delta
참조: util-linux 2.20.1의 dmesg)
hth - 스테판