Hi community, regarding Prometheus metrics in flyt...
# flyte-support
w
Hi community, regarding Prometheus metrics in flytepropeller, we've been emitting metrics in propeller at the task plugin level which contain metrics that have
_unlabeled
suffix added to it (
flyte:propeller:plugin:databricks_success_unlabeled
for example). I can see that this is generated from
EmitUnlabeledMetric()
which is implemented in
promutils
of stdlib. What is the purpose of the split between labeled vs unlabeled? I can see that a metric is considered unlabeled if it doesn't exist within the
taskMetricsMap
, but it isn't too clear to me why a metric name would be in the map in the first place or not.
t
did you get an answer to this btw?
w
No I did not
Just wanted to follow up on this again to see if anyone has pointers on differences between these two metric types
a
cc @high-park-82026
w
Another request for follow up on this
f
I'm not too familiar with the distinction between the two. My guess is this is done to limit the size of the metrics to improve performance. Smaller metric = less storage + processing overhead
w
I'm speculating, but I assume labeled might be referring to Prometheus labels to allow for multidimensional metrics, and unlabeled would mean that it's a single dimensional metric.
t
I looked at this a few weeks ago btw… i came to the same conclusion that you did, which is that it doesn’t necessarily make any sense why that’s there.
👍 1
it looks like basically a function was used that had an extra parameter at a point where we didn’t need it?
w
Yea, what is bothersome is now, on our metric emissions for flytepropeller, we have both labeled and unlabeled, where unlabeled emits just a bit more frequently, but they have nearly the same values as each other. I'm inclined to just consolidate the two on our end.
a
I'm inclined to just consolidate the two on our end.
I guess that's friction that the flyte code shouldn't introduce. Would you mind filing an Issue to better track/discuss this?
👍 1
w
Sure, I'll open an issue