package reporter

import "github.com/openzipkin/zipkin-go/reporter"

Package reporter holds the Reporter interface which is used by the Zipkin Tracer to send finished spans.

Subpackages of package reporter contain officially supported standard reporter implementations.

Index

Types

type JSONSerializer

type JSONSerializer struct{}

JSONSerializer implements the default JSON encoding SpanSerializer.

func (JSONSerializer) ContentType

func (JSONSerializer) ContentType() string

ContentType returns the ContentType needed for this encoding.

func (JSONSerializer) Serialize

func (JSONSerializer) Serialize(spans []*model.SpanModel) ([]byte, error)

Serialize takes an array of Zipkin SpanModel objects and returns a JSON encoding of it.

type Reporter

type Reporter interface {
	Send(model.SpanModel) // Send Span data to the reporter
	Close() error         // Close the reporter
}

Reporter interface can be used to provide the Zipkin Tracer with custom implementations to publish Zipkin Span data.

func NewNoopReporter

func NewNoopReporter() Reporter

NewNoopReporter returns a no-op Reporter implementation.

type SpanSerializer

type SpanSerializer interface {
	Serialize([]*model.SpanModel) ([]byte, error)
	ContentType() string
}

SpanSerializer describes the methods needed for allowing to set Span encoding type for the various Zipkin transports.

Source Files

reporter.go serializer.go

Directories

PathSynopsis
reporter/amqpPackage amqp implements a RabbitMq reporter to send spans to a Rabbit server/cluster.
reporter/httpPackage http implements a HTTP reporter to send spans to Zipkin V2 collectors.
reporter/kafkaPackage kafka implements a Kafka reporter to send spans to a Kafka server/cluster.
reporter/logPackage log implements a reporter to send spans in V2 JSON format to the Go standard Logger.
reporter/recorderPackage recorder implements a reporter to record spans in v2 format.
Version
v0.4.3 (latest)
Published
Apr 29, 2024
Platform
js/wasm
Imports
2 packages
Last checked
8 hours ago

Tools for package owners.