|
|
|
|
@ -15,6 +15,7 @@ package model |
|
|
|
|
|
|
|
|
|
import ( |
|
|
|
|
"time" |
|
|
|
|
"fmt" |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
// A Fingerprint is a simplified representation of an entity---e.g., a hash of
|
|
|
|
|
@ -45,6 +46,14 @@ type Metric map[LabelName]LabelValue |
|
|
|
|
// remedied down the road.
|
|
|
|
|
type SampleValue float32 |
|
|
|
|
|
|
|
|
|
func (v SampleValue) MarshalJSON() ([]byte, error) { |
|
|
|
|
return []byte(fmt.Sprintf("\"%f\"", v)), nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (s SamplePair) MarshalJSON() ([]byte, error) { |
|
|
|
|
return []byte(fmt.Sprintf("{\"Value\": \"%f\", \"Timestamp\": %d}", s.Value, s.Timestamp.Unix())), nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
type Sample struct { |
|
|
|
|
Metric Metric |
|
|
|
|
Value SampleValue |
|
|
|
|
|