kinesis-consumer/examples/consumer.go
Harlow Ward 70c3b1bd79 Broke apart generic files into directories
* Added new package name for each directory.
* Update tests to match new package names.
2014-07-29 19:15:44 -07:00

36 lines
771 B
Go

package main
import (
"fmt"
"github.com/harlow/go-etl/checkpoints"
"github.com/harlow/go-etl/emitters"
"github.com/harlow/go-etl/utils"
"github.com/joho/godotenv"
"github.com/sendgridlabs/go-kinesis"
)
func main() {
godotenv.Load()
s := "inputStream"
k := kinesis.New("", "", kinesis.Region{})
c := checkpoints.RedisCheckpoint{AppName: "sampleApp"}
e := emitters.S3Emitter{S3Bucket: "bucketName"}
// t := transformers.EventTransformer{}
args := kinesis.NewArgs()
args.Add("StreamName", s)
streamInfo, err := k.DescribeStream(args)
if err != nil {
fmt.Printf("Unable to connect to %v stream. Aborting.", s)
return
}
for _, shard := range streamInfo.StreamDescription.Shards {
go utils.GetRecords(k, &c, e, s, shard.ShardId)
}
select {}
}