mirror of
				https://github.com/ClusterCockpit/cc-metric-collector.git
				synced 2025-10-31 09:05:05 +01:00 
			
		
		
		
	Update README for CCMetric
This commit is contained in:
		| @@ -12,7 +12,21 @@ type ccMetric struct { | ||||
|     tm     time.Time         // line-protocol | ||||
|     meta   []*influx.Tag | ||||
| } | ||||
|  | ||||
| type CCMetric interface { | ||||
|     influx.MutableMetric        // the same functions as defined by influx.MutableMetric | ||||
|     RemoveTag(key string)       // this is not published by the original influx.MutableMetric | ||||
|     Meta() map[string]string | ||||
|     MetaList() []*lp.Tag | ||||
|     AddMeta(key, value string) | ||||
|     HasMeta(key string) bool | ||||
|     GetMeta(key string) (string, bool) | ||||
|     RemoveMeta(key string) | ||||
| } | ||||
| ``` | ||||
|  | ||||
| The `CCMetric` interface provides the same functions as the `MutableMetric` like `{Add, Remove, Has}{Tag, Field}` and additionally provides `{Add, Remove, Has}Meta` | ||||
| The `CCMetric` interface provides the same functions as the `MutableMetric` like `{Add, Remove, Has}{Tag, Field}` and additionally provides `{Add, Remove, Has}Meta`. | ||||
|  | ||||
| The InfluxDB protocol creates a new metric with `influx.New(name, tags, fields, time)` while CCMetric uses `ccMetric.New(name, tags, meta, fields, time)` where `tags` and `meta` are both of type `map[string]string`. | ||||
|  | ||||
| You can copy a CCMetric with `FromMetric(other CCMetric) CCMetric`. If you get an `influx.Metric` from a function, like the line protocol parser, you can use `FromInfluxMetric(other influx.Metric) CCMetric` to get a CCMetric out of it (see `NatsReceiver` for an example). | ||||
|   | ||||
		Reference in New Issue
	
	Block a user