Go examples: add a sink data producer
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
阅读 examples/python/sink-data-producer/producer.py 及其 README 部分,然后检查 examples/go/common/client.go 和 examples/go/getting-started/producer/main.go,了解连接和设置模式。添加 examples/go/sink-data-producer/main.go 和 README 部分,其中包含指定的环境变量和记录字段。完成标准是:README 中的 go run 命令能在全新的服务器上运行,创建缺少的资源,发送所要求的批次,并且 go vet ./... 通过。
由索引模型根据 Issue 内容生成。
描述
Description
The Rust, Java, Node and Python examples include a sink data producer, which fills a topic with JSON records so a sink connector has something to read. The Go examples have none.
Affected area / component
Go examples
Proposed solution
Add examples/go/sink-data-producer/main.go and a "Sink Data Producer" section in examples/go/README.md.
- Use
examples/python/sink-data-producer/producer.pyand its README section as the model. Match the Rust and Python record fields (user_id,user_type,email,source,state,created_at,message) so one connector config works for every SDK. The Node version uses a different set, so do not copy from it. - Use the same environment variables as the Python README:
IGGY_STREAM(defaultqw),IGGY_TOPIC(defaultrecords),IGGY_ADDRESS,IGGY_USERNAMEandIGGY_PASSWORD. examples/go/common/client.goandexamples/go/getting-started/producer/main.goshow connecting, logging in and creating the stream and topic.- The producer creates the stream and topic if they are missing, sends 100 batches of 100 to 499 records, logs the total and exits. Running it again against the same server works, and the stream and topic are kept.
- Put the command in a
go runline in the README, soscripts/run-examples-from-readme.shruns it in CI.
TLS is out of scope.
How to test: start a fresh server (cargo run --bin iggy-server -- --fresh --with-default-root-credentials), run the producer from examples/go with the README command, poll a few messages back to check they are valid JSON, and run go vet ./... in examples/go.
Good first issue
- I think this could be a good first issue for a new contributor
- 主要语言
- Rust
- 星标
- 5.2k
- 派生
- 516
- 平均合并
- 2 天 12 小时
- 30 天内合并 PR
- 145
环境准备
在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
apache/iggy 的其他 Issue
-
docs good first issue php
难度 1/5 1-3 小时 新手友好度 90/100
维护者通常 1 天内回复
-
good first issue javascript test
难度 2/5 1-3 小时 新手友好度 88/100
维护者通常 1 天内回复
-
good first issue javascript test
难度 2/5 1-3 小时 新手友好度 88/100
维护者通常 1 天内回复
-
good first issue javascript test
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
good first issue javascript test
难度 2/5 1-3 小时 新手友好度 90/100
维护者通常 1 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 67/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
0xPlaygrounds/rig#3176 · 1 条评论 ·
维护者通常 1 天内回复
-
packaging
难度 2/5 1-3 小时 新手友好度 74/100
SalomonAvila/memtop#23 ·
维护者通常 1 天内回复
-
Anthropic provider: 400 on tools.N.custom.name after tool_search adds web.run (name contains a dot)未关闭area:install area:mcp area:state area:tui os:macos
难度 2/5 1-3 小时 新手友好度 73/100