我正在尝试使用@type record_transformer屏蔽密码,我的一些应用程序日志语句没有消息,因为td-agent日志文件中出现以下错误,是否有任何可以克服这个问题的方法。如果找不到消息字段,如何忽略此字段。
2021-09-28 18:05:15.751529402 +0000 fluent.warn: {"error":"#<RuntimeError: failed to expand `record[\"message\"].gsub(/[Pp]assword*([^,]*)/,'******').gsub(/([Aa]uthorization\\s*.\\s*[Bb]earer\\s)[\\w\\.\\-^]+/,'******').gsub(/([Aa]uthorization_ml\\s*.\\s*[Bb]earer\\s)[\\w\\.\\-^]+/,'******')` : error = undefined method `gsub' for nil:NilClass>","location":"/opt/td-agent/embedded/lib/ruby/gems/2.4.0/gems/fluentd-1.11.1/lib/fluent/plugin/filter_record_transformer.rb:310:in `rescue in expand'","发布于 2021-09-28 19:11:03
调用#gsub (可能是一个字符串)的对象是nil。查找到达record_transformer的丢失数据-可能是返回nil的错误哈希查找
您可以在每个对象上使用#nil?方法来保护nil。
if obj.nil?
# do thing
endhttps://stackoverflow.com/questions/69367293
复制相似问题