Client provides simplified telemetry functionality for docker agent
| 258 | |
| 259 | // Client provides simplified telemetry functionality for docker agent |
| 260 | type Client struct { |
| 261 | logger *telemetryLogger |
| 262 | userUUID string |
| 263 | desktopUUID string |
| 264 | enabled bool |
| 265 | debugMode bool // Print to stdout instead of sending |
| 266 | httpClient HTTPClient |
| 267 | endpoint string // Docker events API endpoint |
| 268 | apiKey string // Docker events API key for authentication |
| 269 | header string // Authorization header for remote telemetry |
| 270 | version string // App version for User-Agent and events |
| 271 | mu sync.RWMutex |
| 272 | |
| 273 | // Session tracking |
| 274 | session SessionState |
| 275 | } |
| 276 | |
| 277 | // setVersion safely sets the version with proper locking |
| 278 | func (tc *Client) setVersion(version string) { |
nothing calls this directly
no outgoing calls
no test coverage detected