본문으로 바로가기
728x90
반응형
728x170

예제는 

github.com/Shopify/sarama

 

Shopify/sarama

Sarama is a Go library for Apache Kafka 0.8, and up. - Shopify/sarama

github.com

여기의 코드를 사용했습니다. 

 

먼저 제가 사용한 부분은 

 

github.com/Shopify/sarama/tree/master/examples/interceptors

 

Shopify/sarama

Sarama is a Go library for Apache Kafka 0.8, and up. - Shopify/sarama

github.com

부분인데 

 

그러기 위해서는 일단 go.mod 파일을 수정해 줄 필요가 있었습니다. 

 

 
module github.com/Shopify/sarama/examples/interceptors

go 1.15

replace github.com/Shopify/sarama => ../../

require (
	github.com/Shopify/sarama v1.27.0
	go.opentelemetry.io/otel v0.10.0
	go.opentelemetry.io/otel/exporters/stdout v0.10.0
	google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940 // indirect
)

아마 이런식으로 되어 있을텐데

 

제 쪽에 맞게 해당 폴더를 Go Path 폴더에 옮긴 뒤 

 

module interceptors

go 1.15

replace github.com/Shopify/sarama => ../../

require (
    // module/path v1.2.3
	github.com/Shopify/sarama v1.27.0
	go.opentelemetry.io/otel v0.10.0
	go.opentelemetry.io/otel/exporters/stdout v0.10.0
	google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940 // indirect
)

 

이런식으로 바꾸어 주었습니다.

 

그런 뒤

 

PC나 Linux환경에서 Zookeeper 실행 후 Kafka 실행 한 뒤, Topic을 생성해줍니다.

 

그 후 

 

go run main.go trace_interceptor.go -brokers="localhost:9092" -topic="cbsong"

 

이렇게 VScode 터미널 창에 입력하면 실행됩니다.

 

code에 flag가 있어서 저렇게 뒤에 -brokers, -topic이라고 넣어주어야 합니다.

 

그렇게 하면 위와 같이 메세지가 뜰텐데 저 JSON값들이 어디서 설정 되어진 값인지 찾아봐도 모르겠습니다...

 

그 후 명령프롬프트 창에서 Customer로 들어가면 아래와 같이 알려줍니다.

 

 

TraceID 값은 계속 변하면서 나오는데 각각의 값들이 어떤 역할을 하는지 알아보아야겠습니다.

728x90
반응형
그리드형

댓글을 달아 주세요