package topic
import "github.com/ydb-platform/ydb-go-sdk/v3/topic"
Example (Topic_read_message)¶
Code:play
package main
import (
"context"
"fmt"
"io/ioutil"
ydb "github.com/ydb-platform/ydb-go-sdk/v3"
"github.com/ydb-platform/ydb-go-sdk/v3/topic/topicoptions"
)
func main() {
ctx := context.TODO()
db, err := ydb.Open(ctx, "grpcs://localhost:2135/local")
if err != nil {
fmt.Printf("failed connect: %v", err)
return
}
defer db.Close(ctx) // cleanup resources
reader, err := db.Topic().StartReader("consumer", topicoptions.ReadTopic("/topic/path"))
if err != nil {
fmt.Printf("failed start reader: %v", err)
return
}
for {
mess, err := reader.ReadMessage(ctx)
if err != nil {
fmt.Printf("failed start reader: %v", err)
return
}
content, err := ioutil.ReadAll(mess)
if err != nil {
fmt.Printf("failed start reader: %v", err)
return
}
fmt.Println(string(content))
}
}
Index ¶
Examples ¶
Types ¶
type Client ¶
type Client interface { // Alter change topic options // // Experimental // // Notice: This API is EXPERIMENTAL and may be changed or removed in a // later release. Alter(ctx context.Context, path string, opts ...topicoptions.AlterOption) error // Create create topic // // Experimental // // Notice: This API is EXPERIMENTAL and may be changed or removed in a // later release. Create(ctx context.Context, path string, codecs []topictypes.Codec, opts ...topicoptions.CreateOption) error // Describe describe topic // // Experimental // // Notice: This API is EXPERIMENTAL and may be changed or removed in a // later release. Describe(ctx context.Context, path string, opts ...topicoptions.DescribeOption) (topictypes.TopicDescription, error) // Drop drop topic // // Experimental // // Notice: This API is EXPERIMENTAL and may be changed or removed in a // later release. Drop(ctx context.Context, path string, opts ...topicoptions.DropOption) error // StartReader start read messages from topic // it is fast non block call, connection starts in background // // Experimental // // Notice: This API is EXPERIMENTAL and may be changed or removed in a // later release. StartReader( consumer string, readSelectors topicoptions.ReadSelectors, opts ...topicoptions.ReaderOption, ) (*topicreader.Reader, error) }
Client is interface for topic client
Experimental
Notice: This API is EXPERIMENTAL and may be changed or removed in a later release.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
topic/topicoptions | |
topic/topicreader | Package topicreader provide Reader to receive messages from YDB topics More examples in examples repository |
topic/topicsugar | |
topic/topictypes |
- Version
- v3.37.6
- Published
- Sep 6, 2022
- Platform
- darwin/amd64
- Imports
- 4 packages
- Last checked
- 1 minute ago –
Tools for package owners.