我创建了一个输入插件,它有两个参数,这两个参数取自配置文件,如结构中所指定的。由于一些未知的原因,插件拒绝运行:
结构:
type Plugin struct {
Address string `toml:"address"`
lines_to_read string `toml:"lines_to_read"`
}
这是配置toml文件plugin.conf
的输入插件部分:
[[inputs.plugin]]
address = "the/filepath.txt"
lines_to_read = "20"
每次我修改go文件时,我都会在文件上运行make,然后运行以下命令:
./telegraf -config plugin.conf -test
我得到这个错误:
E! error loading config file plugin.conf: plugin inputs.plugin: line 1156: configuration specified the fields ["lines_to_read"], but they weren't used
加载地址没有问题,但是“lines_to_read”值不断抛出这个错误。你知道这是怎么回事吗?
已尝试删除“lines_to_read”,运行正常。已尝试删除下划线。未更改。已尝试再次运行make并检查错误。Make运行正常。
1条答案
按热度按时间fykwrbwg1#
telegraf
使用github.com/influxdata/toml
包解组toml数据,该包要求Map的struct字段必须导出(参见https://pkg.go.dev/github.com/influxdata/toml#section-readme)。尝试将字段从
lines_to_read
重命名为LinesToRead
来导出: