Documentation
¶
Index ¶
Constants ¶
View Source
const ( // DefaultEndpoint is the telemetry collection endpoint DefaultEndpoint = "https://telemetry.basekick.net/api/v1/telemetry" // DefaultInterval is the telemetry reporting interval DefaultInterval = 24 * time.Hour )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CPUInfo ¶
type CPUInfo struct {
PhysicalCores *int `json:"physical_cores"`
LogicalCores *int `json:"logical_cores"`
FrequencyMHz *int `json:"frequency_mhz"`
}
CPUInfo contains CPU information
type Collector ¶
type Collector struct {
// contains filtered or unexported fields
}
Collector collects and sends telemetry data
func (*Collector) GetInstanceID ¶
GetInstanceID returns the instance ID
type Config ¶
type Config struct {
Enabled bool // Enable telemetry (default: true)
Endpoint string // Telemetry endpoint URL
Interval time.Duration // Reporting interval (default: 24h)
DataDir string // Directory for instance ID file
}
Config holds telemetry configuration
func DefaultConfig ¶
func DefaultConfig() *Config
DefaultConfig returns the default telemetry configuration
type MemInfo ¶
type MemInfo struct {
TotalGB *float64 `json:"total_gb"`
}
MemInfo contains memory information
type OSInfo ¶
type OSInfo struct {
Name string `json:"name"`
Version string `json:"version"`
Architecture string `json:"architecture"`
Platform string `json:"platform"`
}
OSInfo contains operating system information
type TelemetryPayload ¶
type TelemetryPayload struct {
InstanceID string `json:"instance_id"`
Timestamp string `json:"timestamp"`
ArcVersion string `json:"arc_version"`
OS OSInfo `json:"os"`
CPU CPUInfo `json:"cpu"`
Memory MemInfo `json:"memory"`
}
TelemetryPayload represents the data sent to the telemetry endpoint Matches Python format from collector.py
Click to show internal directories.
Click to hide internal directories.