使用Confluent.Kafka从.net核心服务写入Kafka

时间:2017-11-20 15:28:40

标签: c# asp.net-core apache-kafka confluent-kafka

我有一个.net核心服务,它从MEMSQL服务器获取数据并返回到客户端。但是,在服务中生成的查询需要记录到Kafka群集。

我尝试安装Confluent.Kafka包并进行日志记录,它在本地运行时工作正常。但是在容器中,服务无法记录并生成以下错误:

 warning NU1701: Package 'librdkafka.redist 0.9.5' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.0'. This package may not be fully compatible with your project.
The type initializer for 'Confluent.Kafka.Impl.LibRdKafka' threw an exception.

容器在LINUX机器上运行。基本上,我需要找出一个与.netcore 2.0一起使用的Confluent.Kafka版本和一个不依赖于.NETFramework v4.6的版本。

2 个答案:

答案 0 :(得分:1)

此警告无害 - 因为librdkafka.redist不包含任何托管代码而发生这种情况,因此nuget无法确定目标框架是什么。这个警告已经在即将发布的版本中得到修复,我们应该在大约一周内完成。

答案 1 :(得分:0)

更新到最新的Confluent Package 0.11.3修复了该问题。现在该服务能够从docker容器访问Kafka集群。