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 |     tm     time.Time         // line-protocol | ||||||
|     meta   []*influx.Tag |     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