Я предполагаю, что Вы подразумеваете, что у Вас есть ssh доступ к серверу. Если это так, используйте команду mv.
Таким образом, если текущий файл называют file.ext, и Вы хотите, чтобы он был назван, файл-bak.ext войдите:
mv file.ext файл-bak.ext
Наконец, я обошел это решение, отфильтровав сообщение с помощью довольно сложного регулярного выражения
:msg, ereregex, "R: @@[a-zA-Z0-9\-]+?@@[a-zA-Z0-9_\-]{1,64}?@@[a-zA-Z0-9\-]+@@[a-zA-Z0-9\-]+?@@[0-9]+?@@[a-zA-Z0-9\-]+?@@[a-zA-Z0-9\-]+?@@[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}[+-][0-9]{2}:[0-9]{2}##[a-zA-Z0-9\-]+?@#.*" :ompgsql:localhost,rudder,rudder,Normation;RudderDbLinuxReportFormat
Это непросто поддерживать, но оно работает и с тех пор не ломается. Спасибо за ваше предложение, в ближайшем будущем я изучу возможность использования хранимой процедуры.
Просто идея, я не уверен, поможет ли это:
Как насчет изменения шаблона SQL INSERT по умолчанию так, чтобы он вызывал ПРОЦЕДУРУ ХРАНЕНИЯ PL / pgSQL, которая имеет достаточную логику для обработки искаженный ввод? Здесь есть некоторая информация: http://www.rsyslog.com/doc/ommysql.html (это для MySQL, но аналогично применяется к модулю PostgreSQL).