我有以下NXLog配置,该配置从磁盘读取文件并将其转发到另一个主机(系统日志)。默认情况下,似乎NXLog仅在日志文件发生更改时才转发数据。
如何配置“ nxlog.conf”,以便即使数据相同也始终转发文件?
var AWS = require("aws-sdk")
AWS.config.update({
region: "us-west-2",
endpoint: process.env.DYNAMODB_URL
})
var dynamodb = new AWS.DynamoDB();
dynamodb.listTables({}, function(err, data) {
if (err) console.error(err, err.stack)
for (tableName of data.TableNames) {
dynamodb.deleteTable({TableName: tableName}, function(err, data) {
if (err) console.error(err, err.stack)
else console.log('Deleted', tableName)
})
}
})
答案 0 :(得分:0)
在NXLog论坛上进行一些挖掘后,将无法完成此操作。基本上,NXLog将监视文件(您可以配置频率)的更改,并在文件附加值(或更改)时重新传输。
因此,一种解决方法是删除文件并重新写入内容(也许按计划),以使NXLog再次转发它。
答案 1 :(得分:0)
除非运行nxlog时更新文件,否则NXLog不会从文件中重新读取数据。
但是,还有另一种解决方法。
将ReadFromLast FALSE
和SavePos FALSE
添加到im_file模块定义中,然后定期运行nxlog -c <custom config>
不过,自定义配置将必须指定其他pid位置。