telemetry

package
v1.6.5-beta001 Latest Latest
Warning

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

Go to latest
Published: Nov 11, 2022 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	APIHostLocal            = "local"
	APIHostExternal         = "external"
	APIHostTestkubeInternal = "testkube-internal"
)
View Source
const SegmentioEnvVariableName = "TESTKUBE_SEGMENTIO_KEY"

Variables

View Source
var (
	TestkubeMeasurementID     = "" //this is default but it can be set using ldflag -X github.com/kubeshop/testkube/pkg/telemetry.TestkubeMeasurementID=G-B6KY2SF30K
	TestkubeMeasurementSecret = ""
)
View Source
var SegmentioKey = "iL0p6r5C9i35F7tRxnB0k3gB2nGh7VTK"

Brew builds can't be parametrized so we are embedding this one

Functions

func AnonymizeHost

func AnonymizeHost(host string) string

func GetMachineID

func GetMachineID() string

GetMachineID returns unique user machine ID

func GoogleAnalyticsSender

func GoogleAnalyticsSender(client *http.Client, payload Payload) (out string, err error)

func SegmentioSender

func SegmentioSender(client *http.Client, payload Payload) (out string, err error)

SegmentioSender sends ananymous telemetry data to segment.io TODO refactor Sender func as out is not needed (use debug loggers to log output)

func SendCmdEvent

func SendCmdEvent(cmd *cobra.Command, version string) (string, error)

SendCmdEvent will send CLI event to GA

func SendCmdInitEvent

func SendCmdInitEvent(cmd *cobra.Command, version string) (string, error)

SendCmdInitEvent will send CLI event to GA

func SendCreateEvent

func SendCreateEvent(event string, params CreateParams) (string, error)

SendCreateEvent will send API create event for Test or Test suite to GA

func SendHeartbeatEvent

func SendHeartbeatEvent(host, version, clusterId string) (string, error)

SendHeartbeatEvent will send CLI event to GA

func SendRunEvent

func SendRunEvent(event string, params RunParams) (string, error)

SendCreateEvent will send API run event for Test or Test suite to GA

func SendServerStartEvent

func SendServerStartEvent(clusterId, version string) (string, error)

SendServerStartEvent will send event to GA

func TestkubeAnalyticsSender

func TestkubeAnalyticsSender(client *http.Client, payload Payload) (out string, err error)

Types

type CreateParams

type CreateParams struct {
	AppVersion string
	DataSource string
	Host       string
	ClusterID  string
	TestType   string
}

CreateParams contains Test or Test suite creation parameters

type Event

type Event struct {
	Name   string `json:"name"`
	Params Params `json:"params,omitempty"`
}

type Params

type Params struct {
	EventCount       int64  `json:"event_count,omitempty"`
	EventCategory    string `json:"event_category,omitempty"`
	AppVersion       string `json:"app_version,omitempty"`
	AppName          string `json:"app_name,omitempty"`
	CustomDimensions string `json:"custom_dimensions,omitempty"`
	DataSource       string `json:"data_source,omitempty"`
	Host             string `json:"host,omitempty"`
	MachineID        string `json:"machine_id,omitempty"`
	ClusterID        string `json:"cluster_id,omitempty"`
	OperatingSystem  string `json:"operating_system,omitempty"`
	Architecture     string `json:"architecture,omitempty"`
	TestType         string `json:"test_type,omitempty"`
	DurationMs       int32  `json:"duration_ms,omitempty"`
	Status           string `json:"status,omitempty"`
}

type Payload

type Payload struct {
	UserID   string  `json:"user_id,omitempty"`
	ClientID string  `json:"client_id,omitempty"`
	Events   []Event `json:"events,omitempty"`
}

func NewAPIPayload

func NewAPIPayload(clusterId, name, version, host string) Payload

func NewCLIPayload

func NewCLIPayload(id, name, version, category string) Payload

func NewCreatePayload

func NewCreatePayload(name string, params CreateParams) Payload

NewCreatePayload prepares payload for Test or Test suite creation

func NewRunPayload

func NewRunPayload(name string, params RunParams) Payload

NewRunPayload prepares payload for Test or Test suite execution

type RunParams

type RunParams struct {
	AppVersion string
	DataSource string
	Host       string
	ClusterID  string
	TestType   string
	DurationMs int32
	Status     string
}

RunParams contains Test or Test suite run parameters

type Sender

type Sender func(client *http.Client, payload Payload) (out string, err error)

Jump to

Keyboard shortcuts

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