-
-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathtypes.go
445 lines (421 loc) · 26.7 KB
/
types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
package megos
// State represents the JSON from the state.json of a mesos node
type State struct {
Version string `json:"version"`
GitSHA string `json:"git_sha"`
GitTag string `json:"git_tag"`
BuildDate string `json:"build_date"`
BuildTime float64 `json:"build_time"`
BuildUser string `json:"build_user"`
StartTime float64 `json:"start_time"`
ElectedTime float64 `json:"elected_time"`
ID string `json:"id"`
PID string `json:"pid"`
Hostname string `json:"hostname"`
ActivatedSlaves float64 `json:"activated_slaves"`
DeactivatedSlaves float64 `json:"deactivated_slaves"`
Cluster string `json:"cluster"`
Leader string `json:"leader"`
CompletedFrameworks []Framework `json:"completed_frameworks"`
OrphanTasks []Task `json:"orphan_tasks"`
UnregisteredFrameworks []string `json:"unregistered_frameworks"`
Flags Flags `json:"flags"`
Slaves []Slave `json:"slaves"`
Frameworks []Framework `json:"frameworks"`
GitBranch string `json:"git_branch"`
LogDir string `json:"log_dir"`
ExternalLogFile string `json:"external_log_file"`
}
// Flags represents the flags of a mesos state
type Flags struct {
AppcStoreDir string `json:"appc_store_dir"`
AllocationInterval string `json:"allocation_interval"`
Allocator string `json:"allocator"`
Authenticate string `json:"authenticate"`
AuthenticateHTTP string `json:"authenticate_http"`
Authenticatee string `json:"authenticatee"`
AuthenticateSlaves string `json:"authenticate_slaves"`
Authenticators string `json:"authenticators"`
Authorizers string `json:"authorizers"`
CgroupsCPUEnablePIDsAndTIDsCount string `json:"cgroups_cpu_enable_pids_and_tids_count"`
CgroupsEnableCfs string `json:"cgroups_enable_cfs"`
CgroupsHierarchy string `json:"cgroups_hierarchy"`
CgroupsLimitSwap string `json:"cgroups_limit_swap"`
CgroupsRoot string `json:"cgroups_root"`
Cluster string `json:"cluster"`
ContainerDiskWatchInterval string `json:"container_disk_watch_interval"`
Containerizers string `json:"containerizers"`
DefaultRole string `json:"default_role"`
DiskWatchInterval string `json:"disk_watch_interval"`
Docker string `json:"docker"`
DockerKillOrphans string `json:"docker_kill_orphans"`
DockerRegistry string `json:"docker_registry"`
DockerRemoveDelay string `json:"docker_remove_delay"`
DockerSandboxDirectory string `json:"docker_sandbox_directory"`
DockerSocket string `json:"docker_socket"`
DockerStoreDir string `json:"docker_store_dir"`
DockerStopTimeout string `json:"docker_stop_timeout"`
EnforceContainerDiskQuota string `json:"enforce_container_disk_quota"`
ExecutorRegistrationTimeout string `json:"executor_registration_timeout"`
ExecutorShutdownGracePeriod string `json:"executor_shutdown_grace_period"`
FetcherCacheDir string `json:"fetcher_cache_dir"`
FetcherCacheSize string `json:"fetcher_cache_size"`
FrameworksHome string `json:"frameworks_home"`
FrameworkSorter string `json:"framework_sorter"`
GCDelay string `json:"gc_delay"`
GCDiskHeadroom string `json:"gc_disk_headroom"`
HadoopHome string `json:"hadoop_home"`
Help string `json:"help"`
Hostname string `json:"hostname"`
HostnameLookup string `json:"hostname_lookup"`
HTTPAuthenticators string `json:"http_authenticators"`
ImageProvisionerBackend string `json:"image_provisioner_backend"`
InitializeDriverLogging string `json:"initialize_driver_logging"`
IP string `json:"ip"`
Isolation string `json:"isolation"`
LauncherDir string `json:"launcher_dir"`
LogAutoInitialize string `json:"log_auto_initialize"`
LogDir string `json:"log_dir"`
Logbufsecs string `json:"logbufsecs"`
LoggingLevel string `json:"logging_level"`
MaxCompletedFrameworks string `json:"max_completed_frameworks"`
MaxCompletedTasksPerFramework string `json:"max_completed_tasks_per_framework"`
MaxSlavePingTimeouts string `json:"max_slave_ping_timeouts"`
Master string `json:"master"`
PerfDuration string `json:"perf_duration"`
PerfInterval string `json:"perf_interval"`
Port string `json:"port"`
Quiet string `json:"quiet"`
Quorum string `json:"quorum"`
QOSCorrectionIntervalMin string `json:"qos_correction_interval_min"`
Recover string `json:"recover"`
RevocableCPULowPriority string `json:"revocable_cpu_low_priority"`
RecoverySlaveRemovalLimit string `json:"recovery_slave_removal_limit"`
RecoveryTimeout string `json:"recovery_timeout"`
RegistrationBackoffFactor string `json:"registration_backoff_factor"`
Registry string `json:"registry"`
RegistryFetchTimeout string `json:"registry_fetch_timeout"`
RegistryStoreTimeout string `json:"registry_store_timeout"`
RegistryStrict string `json:"registry_strict"`
ResourceMonitoringInterval string `json:"resource_monitoring_interval"`
RootSubmissions string `json:"root_submissions"`
SandboxDirectory string `json:"sandbox_directory"`
SlavePingTimeout string `json:"slave_ping_timeout"`
SlaveReregisterTimeout string `json:"slave_reregister_timeout"`
Strict string `json:"strict"`
SystemdRuntimeDirectory string `json:"systemd_runtime_directory"`
SwitchUser string `json:"switch_user"`
OversubscribedResourcesInterval string `json:"oversubscribed_resources_interval"`
UserSorter string `json:"user_sorter"`
Version string `json:"version"`
WebuiDir string `json:"webui_dir"`
WorkDir string `json:"work_dir"`
ZK string `json:"zk"`
ZKSessionTimeout string `json:"zk_session_timeout"`
}
// Framework represent a single framework of a mesos node
type Framework struct {
Active bool `json:"active"`
Checkpoint bool `json:"checkpoint"`
CompletedTasks []Task `json:"completed_tasks"`
Executors []Executor `json:"executors"`
CompletedExecutors []Executor `json:"completed_executors"`
FailoverTimeout float64 `json:"failover_timeout"`
Hostname string `json:"hostname"`
ID string `json:"id"`
Name string `json:"name"`
PID string `json:"pid"`
OfferedResources Resources `json:"offered_resources"`
Offers []Offer `json:"offers"`
RegisteredTime float64 `json:"registered_time"`
ReregisteredTime float64 `json:"reregistered_time"`
Resources Resources `json:"resources"`
Role string `json:"role"`
Tasks []Task `json:"tasks"`
UnregisteredTime float64 `json:"unregistered_time"`
UsedResources Resources `json:"used_resources"`
User string `json:"user"`
WebuiURL string `json:"webui_url"`
Labels []Label `json:"label"`
// Missing fields
// TODO: "capabilities": [],
}
// Offer represents a single offer from a Mesos Slave to a Mesos master
type Offer struct {
ID string `json:"id"`
FrameworkID string `json:"framework_id"`
SlaveID string `json:"slave_id"`
Hostname string `json:"hostname"`
URL URL `json:"url"`
Resources Resources `json:"resources"`
Attributes map[string]string `json:"attributes"`
}
// URL represents a single URL
type URL struct {
Scheme string `json:"scheme"`
Address Address `json:"address"`
Path string `json:"path"`
Parameters []Parameter `json:"parameters"`
}
// Address represents a single address.
// e.g. from a Slave or from a Master
type Address struct {
Hostname string `json:"hostname"`
IP string `json:"ip"`
Port int `json:"port"`
}
// Parameter represents a single key / value pair for parameters
type Parameter struct {
Key string `json:"key"`
Value string `json:"value"`
}
// Label represents a single key / value pair for labeling
type Label struct {
Key string `json:"key"`
Value string `json:"value"`
}
// Task represent a single Mesos task
type Task struct {
// Missing fields
// TODO: "labels": [],
ExecutorID string `json:"executor_id"`
FrameworkID string `json:"framework_id"`
ID string `json:"id"`
Name string `json:"name"`
Resources Resources `json:"resources"`
SlaveID string `json:"slave_id"`
State string `json:"state"`
Statuses []TaskStatus `json:"statuses"`
Discovery TaskDiscovery `json:"discovery"`
Container Container `json:"container"`
}
// Container represents one way a Mesos task can be ran
type Container struct {
Type string `json:"type"`
Docker Docker `json:"docker,omitempty"`
}
// Docker is one type of Container
type Docker struct {
Image string `json:"image"`
Network string `json:"network"`
PortMappings []PortMapping `json:"port_mappings"`
Priviledge bool `json:"priviledge"`
Parameters []Parameter `json:"parameters"`
ForcePullImage bool `json:"force_pull_image"`
}
// PortMapping represents how containers ports map to host ports
type PortMapping struct {
HostPort int `json:"host_port"`
ContainerPort int `json:"container_port"`
Protocol string `json:"protocol"`
}
// TaskDiscovery represents the dicovery information of a task
type TaskDiscovery struct {
Visibility string `json:"visibility"`
Name string `json:"name"`
Ports Ports `json:"ports"`
}
// Ports represents a number of PortDetails
type Ports struct {
Ports []PortDetails `json:"ports"`
}
// PortDetails represents details about a single port
type PortDetails struct {
Number int `json:"number"`
Protocol string `json:"protocol"`
}
// Resources represents a resource type for a task
type Resources struct {
CPUs float64 `json:"cpus"`
Disk float64 `json:"disk"`
Mem float64 `json:"mem"`
Ports string `json:"ports"`
}
// TaskStatus represents the status of a single task
type TaskStatus struct {
State string `json:"state"`
Timestamp float64 `json:"timestamp"`
ContainerStatus ContainerStatus `json:"container_status"`
}
// ContainerStatus represents the status of a single container inside a task
type ContainerStatus struct {
NetworkInfos []NetworkInfo `json:"network_infos"`
}
// NetworkInfo represents information about the network of a container
type NetworkInfo struct {
IpAddress string `json:"ip_address"`
IpAddresses []IpAddress `json:"ip_addresses"`
}
// IpAddress represents a single IpAddress
type IpAddress struct {
IpAddress string `json:"ip_address"`
}
// Slave represents a single mesos slave node
type Slave struct {
Active bool `json:"active"`
Hostname string `json:"hostname"`
ID string `json:"id"`
PID string `json:"pid"`
RegisteredTime float64 `json:"registered_time"`
Resources Resources `json:"resources"`
UsedResources Resources `json:"used_resources"`
OfferedResources Resources `json:"offered_resources"`
ReservedResources map[string]Resources `json:"reserved_resources"`
UnreservedResources Resources `json:"unreserved_resources"`
Attributes map[string]interface{} `json:"attributes"`
Version string `json:"version"`
}
// Executor represents a single executor of a framework
type Executor struct {
CompletedTasks []Task `json:"completed_tasks"`
Container string `json:"container"`
Directory string `json:"directory"`
ID string `json:"id"`
Name string `json:"name"`
Resources Resources `json:"resources"`
Source string `json:"source"`
QueuedTasks []Task `json:"queued_tasks"`
Tasks []Task `json:"tasks"`
}
// System represents a system stats of a node
type System struct {
AvgLoad15min float64 `json:"avg_load_15min"`
AvgLoad1min float64 `json:"avg_load_1min"`
AvgLoad5min float64 `json:"avg_load_5min"`
CpusTotal float64 `json:"cpus_total"`
MemFreeBytes float64 `json:"mem_free_bytes"`
MemTotalBytes float64 `json:"mem_total_bytes"`
}
// MetricsSnapshot represents the metrics of a node
type MetricsSnapshot struct {
AllocatorEventQueueDispatches float64 `json:"allocator/event_queue_dispatches"`
AllocatorMesosAllocationRunMs float64 `json:"allocator/mesos/allocation_run_ms"`
AllocatorMesosAllocationRunMsCount float64 `json:"allocator/mesos/allocation_run_ms/count"`
AllocatorMesosAllocationRunMsMax float64 `json:"allocator/mesos/allocation_run_ms/max"`
AllocatorMesosAllocationRunMsMin float64 `json:"allocator/mesos/allocation_run_ms/min"`
AllocatorMesosAllocationRunMsP50 float64 `json:"allocator/mesos/allocation_run_ms/p50"`
AllocatorMesosAllocationRunMsP90 float64 `json:"allocator/mesos/allocation_run_ms/p90"`
AllocatorMesosAllocationRunMsP95 float64 `json:"allocator/mesos/allocation_run_ms/p95"`
AllocatorMesosAllocationRunMsP99 float64 `json:"allocator/mesos/allocation_run_ms/p99"`
AllocatorMesosAllocationRunMsP999 float64 `json:"allocator/mesos/allocation_run_ms/p999"`
AllocatorMesosAllocationRunMsP9999 float64 `json:"allocator/mesos/allocation_run_ms/p9999"`
AllocatorMesosAllocationRuns float64 `json:"allocator/mesos/allocation_runs"`
AllocatorMesosEventQueueDispatches float64 `json:"allocator/mesos/event_queue_dispatches"`
AllocatorMesosOfferFiltersRolesActive float64 `json:"allocator/mesos/offer_filters/roles/*/active"`
AllocatorMesosResourcesCpusOfferedorAllocated float64 `json:"allocator/mesos/resources/cpus/offered_or_allocated"`
AllocatorMesosResourcesCpusTotal float64 `json:"allocator/mesos/resources/cpus/total"`
AllocatorMesosResourcesDiskOfferedorAllocated float64 `json:"allocator/mesos/resources/disk/offered_or_allocated"`
AllocatorMesosResourcesDiskTotal float64 `json:"allocator/mesos/resources/disk/total"`
AllocatorMesosResourcesMemOfferedorAllocated float64 `json:"allocator/mesos/resources/mem/offered_or_allocated"`
AllocatorMesosResourcesMemTotal float64 `json:"allocator/mesos/resources/mem/total"`
AllocatorMesosRolesSharesDominant float64 `json:"allocator/mesos/roles/*/shares/dominant"`
MasterCpusPercent float64 `json:"master/cpus_percent"`
MasterCpusRevocablePercent float64 `json:"master/cpus_revocable_percent"`
MasterCpusRevocableTotal float64 `json:"master/cpus_revocable_total"`
MasterCpusRevocableUsed float64 `json:"master/cpus_revocable_used"`
MasterCpusTotal float64 `json:"master/cpus_total"`
MasterCpusUsed float64 `json:"master/cpus_used"`
MasterDiskPercent float64 `json:"master/disk_percent"`
MasterDiskRevocablePercent float64 `json:"master/disk_revocable_percent"`
MasterDiskRevocableTotal float64 `json:"master/disk_revocable_total"`
MasterDiskRevocableUsed float64 `json:"master/disk_revocable_used"`
MasterDiskTotal float64 `json:"master/disk_total"`
MasterDiskUsed float64 `json:"master/disk_used"`
MasterDroppedMessages float64 `json:"master/dropped_messages"`
MasterElected float64 `json:"master/elected"`
MasterEventQueueDispatches float64 `json:"master/event_queue_dispatches"`
MasterEventQueueHttpRequests float64 `json:"master/event_queue_http_requests"`
MasterEventQueueMessages float64 `json:"master/event_queue_messages"`
MasterFrameworksActive float64 `json:"master/frameworks_active"`
MasterFrameworksConnected float64 `json:"master/frameworks_connected"`
MasterFrameworksDisconnected float64 `json:"master/frameworks_disconnected"`
MasterFrameworksInactive float64 `json:"master/frameworks_inactive"`
MasterGpusPercent float64 `json:"master/gpus_percent"`
MasterGpusRevocablePercent float64 `json:"master/gpus_revocable_percent"`
MasterGpusRevocableTotal float64 `json:"master/gpus_revocable_total"`
MasterGpusRevocableUsed float64 `json:"master/gpus_revocable_used"`
MasterGpusTotal float64 `json:"master/gpus_total"`
MasterGpusUsed float64 `json:"master/gpus_used"`
MasterInvalidExecutortoFrameworkMessages float64 `json:"master/invalid_executor_to_framework_messages"`
MasterInvalidFrameworktoExecutorMessages float64 `json:"master/invalid_framework_to_executor_messages"`
MasterInvalidStatusUpdateAcknowledgements float64 `json:"master/invalid_status_update_acknowledgements"`
MasterInvalidStatusUpdates float64 `json:"master/invalid_status_updates"`
MasterMemPercent float64 `json:"master/mem_percent"`
MasterMemRevocablePercent float64 `json:"master/mem_revocable_percent"`
MasterMemRevocableTotal float64 `json:"master/mem_revocable_total"`
MasterMemRevocableUsed float64 `json:"master/mem_revocable_used"`
MasterMemTotal float64 `json:"master/mem_total"`
MasterMemUsed float64 `json:"master/mem_used"`
MasterMessagesAuthenticate float64 `json:"master/messages_authenticate"`
MasterMessagesDeactivateFramework float64 `json:"master/messages_deactivate_framework"`
MasterMessagesDeclineOffers float64 `json:"master/messages_decline_offers"`
MasterMessagesExecutortoFramework float64 `json:"master/messages_executor_to_framework"`
MasterMessagesExitedExecutor float64 `json:"master/messages_exited_executor"`
MasterMessagesFrameworkToExecutor float64 `json:"master/messages_framework_to_executor"`
MasterMessagesKillTask float64 `json:"master/messages_kill_task"`
MasterMessagesLaunchTasks float64 `json:"master/messages_launch_tasks"`
MasterMessagesReconcileTasks float64 `json:"master/messages_reconcile_tasks"`
MasterMessagesRegisterFramework float64 `json:"master/messages_register_framework"`
MasterMessagesRegisterSlave float64 `json:"master/messages_register_slave"`
MasterMessagesReregisterFramework float64 `json:"master/messages_reregister_framework"`
MasterMessagesReregisterSlave float64 `json:"master/messages_reregister_slave"`
MasterMessagesResourceRequest float64 `json:"master/messages_resource_request"`
MasterMessagesReviveOffers float64 `json:"master/messages_revive_offers"`
MasterMessagesStatusUpdate float64 `json:"master/messages_status_update"`
MasterMessagesStatusUpdateAcknowledgement float64 `json:"master/messages_status_update_acknowledgement"`
MasterMessagesSuppressOffers float64 `json:"master/messages_suppress_offers"`
MasterMessagesUnregisterFramework float64 `json:"master/messages_unregister_framework"`
MasterMessagesUnregisterSlave float64 `json:"master/messages_unregister_slave"`
MasterMessagesUpdateSlave float64 `json:"master/messages_update_slave"`
MasterOutstandingOffers float64 `json:"master/outstanding_offers"`
MasterRecoverySlaveRemovals float64 `json:"master/recovery_slave_removals"`
MasterSlaveRegistrations float64 `json:"master/slave_registrations"`
MasterSlaveRemovals float64 `json:"master/slave_removals"`
MasterSlaveRemovalsReasonRegistered float64 `json:"master/slave_removals/reason_registered"`
MasterSlaveRemovalsReasonUnhealthy float64 `json:"master/slave_removals/reason_unhealthy"`
MasterSlaveRemovalsReasonUnregistered float64 `json:"master/slave_removals/reason_unregistered"`
MasterSlaveReregistrations float64 `json:"master/slave_reregistrations"`
MasterSlaveShutdownsCanceled float64 `json:"master/slave_shutdowns_canceled"`
MasterSlaveShutdownsCompleted float64 `json:"master/slave_shutdowns_completed"`
MasterSlaveShutdownsScheduled float64 `json:"master/slave_shutdowns_scheduled"`
MasterSlavesActive float64 `json:"master/slaves_active"`
MasterSlavesConnected float64 `json:"master/slaves_connected"`
MasterSlavesDisconnected float64 `json:"master/slaves_disconnected"`
MasterSlavesInactive float64 `json:"master/slaves_inactive"`
MasterTaskFailedSourceSlaveReasonContainerLaunchFailed float64 `json:"master/task_failed/source_slave/reason_container_launch_failed"`
MasterTaskKilledSourceSlaveReasonExecutorUnregistered float64 `json:"master/task_killed/source_slave/reason_executor_unregistered"`
MasterTasksError float64 `json:"master/tasks_error"`
MasterTasksFailed float64 `json:"master/tasks_failed"`
MasterTasksFinished float64 `json:"master/tasks_finished"`
MasterTasksKilled float64 `json:"master/tasks_killed"`
MasterTasksKilling float64 `json:"master/tasks_killing"`
MasterTasksLost float64 `json:"master/tasks_lost"`
MasterTasksRunning float64 `json:"master/tasks_running"`
MasterTasksStaging float64 `json:"master/tasks_staging"`
MasterTasksStarting float64 `json:"master/tasks_starting"`
MasterUptimeSecs float64 `json:"master/uptime_secs"`
MasterValidExecutortoFrameworkMessages float64 `json:"master/valid_executor_to_framework_messages"`
MasterValidFrameworktoExecutorMessages float64 `json:"master/valid_framework_to_executor_messages"`
MasterValidStatusUpdateAcknowledgements float64 `json:"master/valid_status_update_acknowledgements"`
MasterValidStatusUpdates float64 `json:"master/valid_status_updates"`
RegistrarLogRecovered float64 `json:"registrar/log/recovered"`
RegistrarQueuedOperations float64 `json:"registrar/queued_operations"`
RegistrarRegistrySizeBytes float64 `json:"registrar/registry_size_bytes"`
RegistrarStateFetchMs float64 `json:"registrar/state_fetch_ms"`
RegistrarStateStoreMs float64 `json:"registrar/state_store_ms"`
RegistrarStateStoreMsCount float64 `json:"registrar/state_store_ms/count"`
RegistrarStateStoreMsMax float64 `json:"registrar/state_store_ms/max"`
RegistrarStateStoreMsMin float64 `json:"registrar/state_store_ms/min"`
RegistrarStateStoreMsP50 float64 `json:"registrar/state_store_ms/p50"`
RegistrarStateStoreMsP90 float64 `json:"registrar/state_store_ms/p90"`
RegistrarStateStoreMsP95 float64 `json:"registrar/state_store_ms/p95"`
RegistrarStateStoreMsP99 float64 `json:"registrar/state_store_ms/p99"`
RegistrarStateStoreMsP999 float64 `json:"registrar/state_store_ms/p999"`
RegistrarStateStoreMsP9999 float64 `json:"registrar/state_store_ms/p9999"`
SystemCpusTotal float64 `json:"system/cpus_total"`
SystemLoad15min float64 `json:"system/load_15min"`
SystemLoad1min float64 `json:"system/load_1min"`
SystemLoad5min float64 `json:"system/load_5min"`
SystemMemFreeBytes float64 `json:"system/mem_free_bytes"`
SystemMemTotalBytes float64 `json:"system/mem_total_bytes"`
}