telemetry

package
v1.0.38875-pre Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 6, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const SegmentKey = "AbgkrgN4cbRhAVEwlzMkHbwvrXnxHh35"

SegmentKey is the Segment write key for CircleCI.

Variables

View Source
var AnonymousID = uuid.MustParse("66f35d3e-40f6-4ade-909b-a6314990de53")

AnonymousID is hard-coded to a well-known value for unknown users. Callers should provide a real user id where possible.

Functions

This section is empty.

Types

type Client

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

func New

func New(ctx context.Context, cfg Config) (_ *Client, err error)

New creates a new segment client

func (*Client) Close

func (c *Client) Close() error

func (*Client) Identify

func (c *Client) Identify() error

func (*Client) Track

func (c *Client) Track(eventName string, props map[string]any) error

Track sends an analytics event.

type Config

type Config struct {
	// Send enables sending events to Segment.
	Send bool
	// Log enables logging events to stderr.
	Log bool

	// WriteKey is the Segment write key, and if not provided, will disable telemtry.
	WriteKey string
	// Endpoint is the Segment endpoint, and is optional, defaulting to segment io.
	// This is normally only set for testing.
	Endpoint string
	// Specifies the number of events to batch together before sending. If zero the client will use a default.
	// This is likely only useful for testing.
	BatchSize int

	Metadata Meta
}

type Meta

type Meta struct {
	Extra map[string]any

	Version string

	InstanceID uuid.UUID
	UserID     uuid.UUID

	// HostInfo is the host info to associate with events.
	HostInfo *host.InfoStat
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL