Search code examples
monitoringinfluxdbprometheus

influxdb's field type equivalent in prometheus


influxdb's data schema supports fields and tags. tags are indexed and fields are not.

prometheus support labels and float64 value.

Mapping between prometheus and influxdb data is as follows:

labels : tags

float64 : a default field

My use case is monitoring batch jobs having auxillary metadata (processid,logfilepath etc.). I dont want these attributes to be indexed.

How do I model these attributes in prometheus ? If I use labels for the same, its going to explode memory usage (label indexing), since its values are not enumerated.

Whats the best way to take care above attributes in prometheus ?


Solution

  • As the processid is a number, you can expose it as a gauge. For strings you can expose them as a label on a 1-valued gauge, such as is done for software versions.