go-srvc / mods / tracemod

github.com/go-srvc/mods/tracemod

pkg.go.dev source
go get github.com/go-srvc/mods/tracemod@v0.1.5

README

tracemod

Using tracemod takes care of exporting spans to otel endpoint and flushing buffers before the application exits.

package main

import (
	"github.com/go-srvc/mods/tracemod"
	"github.com/go-srvc/srvc"
)

func main() {
	srvc.RunAndExit(
		tracemod.New(),
	)
}

Overview

Package tracemod provides OpenTelemetry trace provider as a module.

Constants

const (
	ErrMissingProvider = errStr("trace provider not set")
	ErrFlushFailed     = errStr("failed to flush remaining spans")
)
const ID = "tracemod"

Types

type Opt

type Opt func(*Provider) error

type Provider

type Provider struct {
	// contains filtered or unexported fields
}

func (*Provider) ID

func (p *Provider) ID() string

func (*Provider) Init

func (p *Provider) Init() error

func (*Provider) Run

func (p *Provider) Run() error

func (*Provider) Stop

func (p *Provider) Stop() error

Examples

ExampleNew

package main

import (
	"github.com/go-srvc/mods/tracemod"
	"github.com/go-srvc/srvc"
)

func main() {
	srvc.RunAndExit(
		tracemod.New(),
	)
}