クラッシュする前に最後に処理したメッセージからプロデューサを開始する必要があります。幸いにも私は1つのトピックと1つのパーティションと1つのコンシューマを持つ場合です。Golang Kafkaの特定のオフセットからコンシューマを設定する方法10
私はhttps://github.com/Shopify/saramaを試しましたが、それはまだ利用可能ではないようです。 私は現在、すべてのメッセージオフセットをコミットできるように、https://godoc.org/github.com/bsm/sarama-clusterを使用しています。
最後にコミットされたオフセットを取得できません サラマフを上記のオフセットから開始する方法を見つけることができません。これまでに見つかった唯一のパラメータはConfig.Producer.Offsets.Initial
です。
- 最後にコミットされたオフセットを取得する方法はありますか?
- オフセットがコミットされた最後のメッセージから消費者を開始させるにはどうすればよいですか?
OffsetNewest
は、消費者が最後に処理したメッセージではなく、最後に生成されたメッセージから開始します。 - bsm/sarama-clusterではなくShopify/saramaのみを使用することは可能ですか?
感謝事前に
P.S.私はカフカ10.0を使用しています。オフセットはカフカの店であり、飼い猫の店ではありません。
EDIT1: 部分的な解決策:sarama.OffsetOldestので、すべてのメッセージを取得し、我々は未処理済み1を見つけるまでそれらのすべてをスキップします。