gocloud.devgocloud.dev/server/sdserver Index | Files

package sdserver

import "gocloud.dev/server/sdserver"

Package sdserver provides the diagnostic hooks for a server using Stackdriver.

Index

Variables

var Set = wire.NewSet(
	server.Set,
	NewTextMapPropagator,
	NewTraceSampler,
	NewTraceExporter,
	NewTraceProvider,
	wire.Bind(new(trace.TracerProvider), new(*sdktrace.TracerProvider)),
	NewMetricsReader,
	NewMeterProvider,
	wire.Bind(new(metric.MeterProvider), new(*sdkmetric.MeterProvider)),

	NewRequestLogger,
	wire.Bind(new(requestlog.Logger), new(*requestlog.StackdriverLogger)),
)

Set is a Wire provider set that provides the diagnostic hooks for *server.Server given a GCP token source and a GCP project ID.

Functions

func NewMeterProvider

func NewMeterProvider(ctx context.Context, reader sdkmetric.Reader) (*sdkmetric.MeterProvider, func(), error)

NewMeterProvider returns a new metric provider for our service to utilise.

The second return value is a Wire cleanup function that calls Close on the provider.

func NewMetricsReader

func NewMetricsReader(projectID gcp.ProjectID) (sdkmetric.Reader, error)

NewMetricsReader returns a new OpenTelemetry gcp metrics reader and exporter.

func NewRequestLogger

func NewRequestLogger() *requestlog.StackdriverLogger

NewRequestLogger returns a request logger that sends entries to stdout.

func NewResource

func NewResource(ctx context.Context) (*resource.Resource, error)

func NewTextMapPropagator

func NewTextMapPropagator() propagation.TextMapPropagator

func NewTraceExporter

func NewTraceExporter(projectID gcp.ProjectID) (sdktrace.SpanExporter, error)

NewTraceExporter returns a new OpenTelemetry gcp trace exporter.

func NewTraceProvider

func NewTraceProvider(ctx context.Context, exporter sdktrace.SpanExporter, sampler sdktrace.Sampler) (*sdktrace.TracerProvider, func(), error)

NewTraceProvider returns a new trace provider for our service to utilise.

The second return value is a Wire cleanup function that calls Close on the provider,

func NewTraceSampler

func NewTraceSampler(ctx context.Context) sdktrace.Sampler

NewTraceSampler returns a new OpenTelemetry trace sampler.

Source Files

server.go

Version
v0.43.0 (latest)
Published
Jul 19, 2025
Platform
js/wasm
Imports
17 packages
Last checked
1 day ago

Tools for package owners.