Вы могли бы сделать это , используя условные выражения , хотя конфигурация синтаксиса rsyslog зависит от версии, которую вы используете, и эта версия CentOS устаревает.
После конфигурации вашего udp-сервера ( UDPServerRun
или аналог) и перед директивами, пересылающими сообщения на удаленный компьютер, вы можете попробовать добавить следующее:
if $fromhost-ip startswith '10.0.0.' then /var/log/remotelogs.log
& ~
Этот должен отправлять удаленные журналы в отдельный файл и предотвратить дальнейшую обработку / ретрансляцию.
Хотя, если вы собираетесь пересылать сообщения системного журнала, я рекомендую вам рассмотреть возможность установки выделенного прокси-сервера / сервера хранения системного журнала - даже двух, если хранение дубликатов является обязательным. Если вы думаете, что простой сервер системного журнала не стоит вашего времени: вы можете взглянуть на Logstash (и стек ELK в целом) или Splunk ... может быть, как побочный проект.
Если вы всегда хотите цвет, измените файл конфигурации / etc / colordiffrc
или ~ / .colordiffrc
согласно комментарию в файле по умолчанию:
# By default, when colordiff output is being redirected
# to a file, it detects this and does not colour-highlight
# To make the patch file *include* colours, change the option
# below to 'yes'
color_patches=no
Попробуйте открыть tempfile
в vim. Когда я это делаю, vim окрашивает его так же, как я вижу в выводе терминала.