【发布时间】:2021-07-03 05:30:41
【问题描述】:
我有一个流利的配置,它从文件中提取数据并推送到 SQL 服务器,但是有一个带有自动递增列的主键,所以,在我的流利配置中,如果我不提及该列,它会抛出一个错误说该字段丢失,如果我在配置中包含该列,它会给出标识错误,在下面的配置中“Id”是主要和自动递增的列,也让我知道适配器“sqlserver”是否正确使用。
<filter record.**>
@type record_transformer
enable_ruby true
<record>
Id ${id}
</record>
<record>
timestamp ${time}
</record>
</filter>
<filter record.**>
@type stdout
</filter>
<match record.**>
@type sql
host myhost
username myuser
password mypassword
database mydb
adapter sqlserver
<table>
table simple_table
column_mapping 'Id:Id,timestamp:timestamp'
</table>
flush_interval 1s
# disable_retry_limit
# num_threads 8
# slow_flush_log_threshold 40.0
</match>
【问题讨论】:
-
请在问题中添加两种情况的错误消息。此外,fluent-plugin-sql 输出插件 (github.com/fluent/fluent-plugin-sql#output-how-it-works) 的文档中也没有提到这种情况。在解析
column_mapping(github.com/fluent/fluent-plugin-sql/blob/…)时,也没有针对这种情况进行任何特殊处理。目前还没有此类问题的报道。请参阅issues,只是为了确定。 -
您应该open an issue 并报告此问题。
-
@Azeem 这是一个问题,但是我弄清楚了导致错误的原因,在 GitHub 中打开问题似乎不会很快有人回复。
标签: ruby-on-rails sql-server activerecord fluentd td-agent