Proposed 2024-01-01 in.dmon.io schema

From wiki.dmon.io
{
  "base": {
    "c_cpu_s": float,
    "c_netrx_B": float,
    "c_nettx_B": float,
    "c_uptime_s": float,
    "g_cpu_temp_C": float,
    "g_diskfree_p": {
      str: float,
      ...
    }
  }
}

---- go

type Metrics struct {
    Base *BaseMetrics `json:"base" dynamodbav:"base,omitempty"`
}

type BaseMetrics struct {
    CounterCPUSeconds    *float64 `json:"c_cpu_s" dynamodbav:"c_cpu_s,omitempty"`
    GaugeCPUTempCelsius  *float64 `json:"g_cpu_temp_C" dynamodbav:"g_cpu_temp_C,omitempty"`
    CounterNetRXBytes    *float64 `json:"c_netrx_B" dynamodbav:"c_netrx_B,omitempty"`
    CounterNetTXBytes    *float64 `json:"c_nettx_B" dynamodbav:"c_nettx_B,omitempty"`
    CounterUptimeSeconds *float64 `json:"c_uptime_s" dynamodbav:"c_uptime_s,omitempty"
    GaugeDiskFreePercent map[string]float64 `json:"g_diskfree_p" dynamodbav:"g_diskfree_p,omitempty"`
}