zipkin-go: Index | Files

package http

import ""

Package http implements a HTTP reporter to send spans to Zipkin V2 collectors.


Package Files


func NewReporter Uses

func NewReporter(url string, opts ...ReporterOption) reporter.Reporter

NewReporter returns a new HTTP Reporter. url should be the endpoint to send the spans to, e.g. http://localhost:9411/api/v2/spans

type HTTPDoer Uses

type HTTPDoer interface {
    Do(req *http.Request) (*http.Response, error)

HTTPDoer will do a request to the Zipkin HTTP Collector

type ReporterOption Uses

type ReporterOption func(r *httpReporter)

ReporterOption sets a parameter for the HTTP Reporter

func BatchInterval Uses

func BatchInterval(d time.Duration) ReporterOption

BatchInterval sets the maximum duration we will buffer traces before emitting them to the collector. The default batch interval is 1 second.

func BatchSize Uses

func BatchSize(n int) ReporterOption

BatchSize sets the maximum batch size, after which a collect will be triggered. The default batch size is 100 traces.

func Client Uses

func Client(client HTTPDoer) ReporterOption

Client sets a custom http client to use under the interface HTTPDoer which includes a `Do` method with same signature as the *http.Client

func Logger Uses

func Logger(l *log.Logger) ReporterOption

Logger sets the logger used to report errors in the collection process.

func MaxBacklog Uses

func MaxBacklog(n int) ReporterOption

MaxBacklog sets the maximum backlog size. When batch size reaches this threshold, spans from the beginning of the batch will be disposed.

func RequestCallback Uses

func RequestCallback(rc RequestCallbackFn) ReporterOption

RequestCallback registers a callback function to adjust the reporter *http.Request before it sends the request to Zipkin.

func Serializer Uses

func Serializer(serializer reporter.SpanSerializer) ReporterOption

Serializer sets the serialization function to use for sending span data to Zipkin.

func Timeout Uses

func Timeout(duration time.Duration) ReporterOption

Timeout sets maximum timeout for the http request through its context.

type RequestCallbackFn Uses

type RequestCallbackFn func(*http.Request)

RequestCallbackFn receives the initialized request from the Collector before sending it over the wire. This allows one to plug in additional headers or do other customization.

Package http imports 9 packages (graph) and is imported by 60 packages. Updated 2020-01-15. Refresh now. Tools for package owners.