Я отслеживаю журналы сервера в реальном времени через Putty, выполнив команду «tail -f console-20160622.log». Я хочу захватить всю информацию об ошибках из журналов, которые генерируются в консоли Putty. Есть ли команда, которая может записать информацию об ошибках в текстовый файл из консоли, или какой-либо другой альтернативный метод?
решение1
Вы пробовали использовать «grep»?
Команда, которая может вам помочь, следующая:
tail -f console-20160622.log | grep "INFO"
GREP отфильтрует строки журнала и покажет только те, которые содержат строку «INFO».
решение2
Если вы используете syslog или rsyslog, у каждого из них есть соответствующий.confфайл.
if ( \
$msg contains 'error' and $msg contains 'OUT=' \
and $msg contains 'SRC=' and $msg contains 'DST=' \
and $msg contains 'PROTO='\
) \
then -/var/log/messageshere.log
Разумеется, вы можете добавить больше, меньше или другие условия.
Вы даже можете войти в MySQL
затем :ommysql:192.168.0.1,syslog,syslog,syslog;название шаблона
Дополнительные опции:
# => all acpid messages for debuging (uncomment if needed):
if ($programname == 'acpid' or $syslogtag == '[acpid]:') then \
-/var/log/acpid
# => up to notice (skip info and debug)
if ($programname == 'acpid' or $syslogtag == '[acpid]:') and \
($syslogseverity <= 5 /* notice */) \
then -/var/log/acpid
& ~
Также
# Emergency messages to everyone logged on (wall)
*.emerg :omusrmsg:*
# enable this, if you want that root is informed
# immediately, e.g. of logins
*.alert root