Help us shape the future of Go! Take the 2026 Go Developer Survey

telemetry

package
v1.0.11 Latest Latest
Warning

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

Go to latest
Published: Aug 10, 2018 License: MIT Imports: 16 Imported by: 6

Documentation

Index

Constants

View Source
const (
	// TelemetryFile Path.
	CNITelemetryFile = platform.CNIRuntimePath + "AzureCNITelemetry.json"
	NPMTelemetryFile = platform.NPMRuntimePath + "AzureNPMTelemetry.json"
)
View Source
const (
	MB = 1048576
	KB = 1024
)

Variables

This section is empty.

Functions

func ReadFileByLines added in v1.0.0

func ReadFileByLines(filename string) ([]string, error)

ReadFileByLines reads file line by line and return array of lines.

Types

type BridgeInfo

type BridgeInfo struct {
	NetworkMode  string
	BridgeName   string
	ErrorMessage string
}

CNI Bridge Details structure.

type CNIReport

type CNIReport struct {
	StartFlag           bool
	CniSucceeded        bool
	Name                string
	Version             string
	ErrorMessage        string
	Context             string
	SubContext          string
	VnetAddressSpace    []string
	OrchestratorDetails *OrchestratorInfo
	OSDetails           *OSInfo
	SystemDetails       *SystemInfo
	InterfaceDetails    *InterfaceInfo
	BridgeDetails       *BridgeInfo
}

Azure CNI Telemetry Report structure.

func (*CNIReport) GetInterfaceDetails added in v1.0.9

func (report *CNIReport) GetInterfaceDetails(queryUrl string)

GetInterfaceDetails creates a report with interface details(ip, mac, name, secondaryca count).

func (*CNIReport) GetOSDetails

func (report *CNIReport) GetOSDetails()

This function creates a report with os details(ostype, version).

func (*CNIReport) GetOrchestratorDetails added in v1.0.9

func (report *CNIReport) GetOrchestratorDetails()

GetOrchestratorDetails creates a report with orchestrator details(name, version).

func (*CNIReport) GetReportState added in v1.0.9

func (report *CNIReport) GetReportState() bool

GetReportState will check if CNI report is sent at least once by checking telemetry file.

func (*CNIReport) GetSystemDetails

func (report *CNIReport) GetSystemDetails()

This function creates a report with system details(memory, disk, cpu).

func (*CNIReport) SetReportState added in v1.0.9

func (report *CNIReport) SetReportState() error

SetReportState will save the state in file if CNI telemetry report sent successfully.

type CNIReportManager added in v1.0.9

type CNIReportManager struct {
	*ReportManager
	IpamQueryURL string
	Report       *CNIReport
}

CNIReportManager structure.

func (*CNIReportManager) GetReport added in v1.0.9

func (reportMgr *CNIReportManager) GetReport(name string, version string)

GetReport retrieves orchestrator, system, OS and Interface details and create a report structure.

func (*CNIReportManager) SendReport added in v1.0.9

func (reportMgr *CNIReportManager) SendReport() error

SendReport will send CNI telemetry report to HostNetAgent.

type ClusterState added in v1.0.9

type ClusterState struct {
	PodCount      int
	NsCount       int
	NwPolicyCount int
}

ClusterState contains the current kubernetes cluster state.

type DiskInfo

type DiskInfo struct {
	DiskTotal uint64
	DiskFree  uint64
}

Disk Info structure.

type InterfaceInfo

type InterfaceInfo struct {
	InterfaceType         string
	Subnet                string
	PrimaryCA             string
	MAC                   string
	Name                  string
	SecondaryCATotalCount int
	SecondaryCAUsedCount  int
	ErrorMessage          string
}

Interface Details structure.

type MemInfo

type MemInfo struct {
	MemTotal uint64
	MemFree  uint64
}

Memory Info structure.

type NPMReport added in v1.0.9

type NPMReport struct {
	StartFlag         bool
	ClusterID         string
	NodeName          string
	InstanceName      string
	NpmVersion        string
	KubernetesVersion string
	ErrorMessage      string
	EventMessage      string
	UpTime            string
	ClusterState      ClusterState
}

NPMReport structure.

func (*NPMReport) GetReportState added in v1.0.9

func (report *NPMReport) GetReportState() bool

GetReportState will check if NPM report is sent at least once by checking telemetry file.

func (*NPMReport) SetReportState added in v1.0.9

func (report *NPMReport) SetReportState() error

SetReportState will save the state in file if NPM telemetry report sent successfully.

type NPMReportManager added in v1.0.9

type NPMReportManager struct {
	*ReportManager
	Report *NPMReport
}

NPMReportManager structure.

func (*NPMReportManager) GetReport added in v1.0.9

func (reportMgr *NPMReportManager) GetReport(clusterID, nodeName, npmVersion, kubernetesVersion string, clusterState ClusterState)

GetReport retrives npm and kubernetes cluster related info and create a report structure.

func (*NPMReportManager) SendReport added in v1.0.9

func (reportMgr *NPMReportManager) SendReport() error

SendReport will send NPM telemetry report to HostNetAgent.

type OSInfo

type OSInfo struct {
	OSType         string
	OSVersion      string
	KernelVersion  string
	OSDistribution string
	ErrorMessage   string
}

OS Details structure.

type OrchestratorInfo added in v1.0.1

type OrchestratorInfo struct {
	OrchestratorName    string
	OrchestratorVersion string
	ErrorMessage        string
}

Orchestrator Details structure.

type ReportManager

type ReportManager struct {
	HostNetAgentURL string
	ReportType      string
}

ReportManager structure.

type SystemInfo

type SystemInfo struct {
	MemVMTotal       uint64
	MemVMFree        uint64
	MemUsedByProcess uint64
	DiskVMTotal      uint64
	DiskVMFree       uint64
	CPUCount         int
	ErrorMessage     string
}

System Details structure.

Jump to

Keyboard shortcuts

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