knative / knative/serving

Don't scrape pods via HTTP if the activator in path.

Open
#7,324 15 comments 1 reaction 1 assignee Claimed by @Alexander-Kita View on GitHub
area/autoscale good first issue kind/feature lifecycle/frozen triage/accepted
Dominant language
Go
Stars
6.1k
Forks
1.2k
Avg merge
2d 7h
Merged PRs (30d)
2

Description

When the activator is in the routing path, scraping the pods is kinda useless as their information is effectively zeroed out, because all requests are considered "proxied", thus the activator metrics take precedence. We can use that to make our system more efficient in these cases!

I propose two steps to go about this:
1. Never scrape if TBC=-1. The activator will always be in path in this case, so we never need to scrape really.
2. Start/Stop scraping if activator is in path or not. This is a little more tricky as we need to make sure that we start scraping timely once we notice the activator will be taken off the path.

As the PodAutoscaler owns all of these decisions, this should be doable for us. As it's a good-first-issue, I'd love to see it land in two separate pieces as laid out though.

**Note:** I'm happy to mentor first-time contributors here. The changes needed should be fairly small in terms of number of files to touch.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.