kafka序列化python库
kser的Python项目详细描述
kafka序列化python库
kser是一个python库包,其目的是将 对卡夫卡消费者执行。它支持复杂的扩展:
运输
librdkafka
您可以选择使用confluent-kafka:
$ pip install kser[confluent]
注意
您需要手动安装librdkafka,请参见confluent-kafka-python documentation
http
还有一个轻量级版本使用http理想来生成消息(不推荐使用)
$ pip install kser[http]
其他
普罗米修斯出口商
您可以使用prometheus格式导出度量:
$ pip install kser[prometheus]
一些环境变量允许管理导出器:
Environment variable | Default value |
---|---|
KSER_METRICS_ENABLED | no |
KSER_METRICS_ADDRESS | 0.0.0.0 |
KSER_METRICS_PORT | 8888 |
默认情况下,导出器仅定义了两个度量,这只是一个示例。好的 实现自己的方法是重写触发器方法(前缀为“u”),如下例所示:
fromkserimportKSER_METRICS_ENABLEDfromprometheus_clientimportCounterfromkser.entryimportEntrypointMY_METRIC=Counter('kser_my_metric','a usefull metric')classMyEntrypoint(Entrypoint):def_run(self):ifKSER_METRICS_ENABLED=="yes":MY_METRIC.inc()returnself.run()
另请参见:
- prometheus_client documentation
- Documentation of the python Prometheus client
OpenTracing支持
您可以使用opentracing和Jaeger来跟踪操作和任务:
$ pip install kser[opentracing]
可以使用环境变量设置配置:
Environment variable | Default value |
---|---|
JAEGER_HOST | localhost |
另请参见:
- Opentracing support with Jaeger
- Kser documentation
附加组件
- Flask extension:烧瓶集成。
要求
- python 3.x
文件
许可证
根据麻省理工学院许可证(LICENSE或http://opensource.org/licenses/MIT)授权