Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ScaleManager.GetTargetScalersResultAsync should only query for concurrency status when Dynamic Concurrency is enabled #3079

Open
mathewc opened this issue Jun 21, 2024 · 0 comments
Assignees

Comments

@mathewc
Copy link
Member

mathewc commented Jun 21, 2024

Currently the code here in ScaleManager.GetTargetScalersResultAsync get Dynamic Concurrency status results regardless of whether DC is enabled. Even when Dynamic Concurrency isn't enabled, this code ends up generating Info level logs in customer logs like this:

2024-06-17T01:53:44Z   [Information]   Request [4912b6a3-00cf-4e28-9c60-9f53379eba98] GET https://<sitename>.blob.core.windows.net/azure-webjobs-hosts/concurrency/<appname>/concurrencyStatus.json
x-ms-version:2021-08-06
Accept:application/xml
x-ms-client-request-id:4912b6a3-00cf-4e28-9c60-9f53379eba98
x-ms-return-client-request-id:true
User-Agent:azsdk-net-Storage.Blobs/12.13.0 (.NET 6.0.29; Microsoft Windows 10.0.20348)
x-ms-date:Mon, 17 Jun 2024 01:53:43 GMT
Authorization:REDACTED
client assembly: Azure.Storage.Blobs
2024-06-17T01:53:44Z   [Warning]   Error response [4912b6a3-00cf-4e28-9c60-9f53379eba98] 404 The specified blob does not exist. (00.0s)
Server:Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id:392d9bdc-d01e-0036-3659-c0991c000000
x-ms-client-request-id:4912b6a3-00cf-4e28-9c60-9f53379eba98
x-ms-version:2021-08-06
x-ms-error-code:BlobNotFound
Date:Mon, 17 Jun 2024 01:53:42 GMT
Content-Length:215
Content-Type:application/xml

This confuses customers, and generates a lot of log noise. We should only check for this status if DC is enabled. It's not only a logging issue - if DC isn't enabled, we shouldn't be using stale status data for scale decisions. We should do a check similar to the check done here.

@mathewc mathewc changed the title ScaleManager.GetTargetScalersResultAsync - only query for concurrency status when Dynamic Concurrency is enabled ScaleManager.GetTargetScalersResultAsync should only query for concurrency status when Dynamic Concurrency is enabled Jun 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants