Rahul Sharma
10/30/2025, 4:23 AMpinot_controller_numMinionSubtasksWaiting_Value and pinot_controller_numMinionSubtasksRunning_Value. However, for each task type, they always show a value of 0 even when tasks are running. Am I using the wrong metrics? Which metrics should I use to build a custom autoscaler for minions?Rahul Sharma
10/30/2025, 4:24 AMRahul Sharma
10/30/2025, 4:25 AMSegmentGenerationAndPushTaskXiang Fu
Rahul Sharma
10/30/2025, 4:44 AMpinot_controller_numMinionSubtasksWaiting_Value and pinot_controller_numMinionSubtasksRunning_Value
these are the metrics but its value is always 0 for SegmentGenerationAndPushTaskRahul Sharma
10/30/2025, 4:46 AMXiang Fu
Rahul Sharma
10/30/2025, 6:11 AMRahul Sharma
10/30/2025, 6:12 AMRahul Sharma
10/30/2025, 8:19 AMShounak Kulkarni
10/30/2025, 8:21 AMAlso, I’m not sure what the “Tasks in Queue” value shown in the UI represents, as I don’t see any tasks actually waiting — all tasks seem to be completed.That's just the task entries which are still there in zk. It may be completed, ongoing or yet to be picked by minions
Rahul Sharma
10/30/2025, 8:21 AMRahul Sharma
10/30/2025, 8:22 AMShounak Kulkarni
10/30/2025, 8:24 AMcontroller.minion.task.metrics.emitter.frequencyPeriod if you want early feedback on the incomplete tasksRahul Sharma
10/30/2025, 8:27 AMRahul Sharma
10/30/2025, 8:29 AMShounak Kulkarni
10/30/2025, 8:31 AMpinot_minion_numberOfTasks_Value at the same time?Rahul Sharma
10/30/2025, 8:33 AMShounak Kulkarni
10/30/2025, 8:33 AMRahul Sharma
10/30/2025, 8:35 AMRahul Sharma
10/30/2025, 8:35 AMRahul Sharma
10/30/2025, 8:36 AMShounak Kulkarni
10/30/2025, 8:37 AMShounak Kulkarni
10/30/2025, 8:37 AMRahul Sharma
10/30/2025, 8:43 AMRahul Sharma
10/30/2025, 8:44 AMcontroller.minion. task.metrics.emitter.frequencyPeriodXiang Fu
Xiang Fu
for t in $(curl -s <http://localhost:9000/tasks/tasktypes> | jq -r '.[]'); do
pending=$(curl -s <http://localhost:9000/tasks/$t/taskstates> | jq 'to_entries | map(select(.value=="NOT_STARTED")) | length')
running=$(curl -s <http://localhost:9000/tasks/$t/taskstates> | jq 'to_entries | map(select(.value=="IN_PROGRESS")) | length')
runSubs=$(curl -s <http://localhost:9000/tasks/$t/taskcounts> | jq 'values | map(.running) | add // 0')
waitSubs=$(curl -s <http://localhost:9000/tasks/$t/taskcounts> | jq 'values | map(.waiting) | add // 0')
echo "$t pending=$pending running=$running runningSubtasks=$runSubs waitingSubtasks=$waitSubs"
done