Blob and file transactions have significantly increased after upgrade to .Net 8 Isolated

MTBD 0 Reputation points
2024-10-03T00:30:18.1933333+00:00

Hi all,

We have noticed a significant increase in blob and file transactions, and therefore significant cost increase, since upgrading our function app from .NET 6 In Process model to .NET 8 Isolated. Wondering if anyone has had a similar issue and how you've solved it?

We are not sure what is causing this, since the function app logic and functionality is essentially the same, just upgraded to .Net 8 Isolated.The cost for Blob storage has increased by approximately 300% or more - and it seems the GetBlobProperties API call is the leading cause as it's usage jumps significantly with the upgrade to .Net 8.

We have no Blob trigger functions in our function app. We have HTTP trigger, Service Bus trigger and Timer trigger functions. 2024-10-03 10_26_09-mtbdmiddleware - Microsoft Azure

What is the easiest/best way to figure out which function(s) is calling GetBlobProperties so often?

When looking at the logs in $logs directory of blob storage, it's basically just line after line of "RenewBlobLease". From what I can tell our function app does not have any diagnostics or logging enabled.

Thanks!

Azure Functions
Azure Functions
An Azure service that provides an event-driven serverless compute platform.
5,149 questions
.NET
.NET
Microsoft Technologies based on the .NET software framework.
3,941 questions
Azure Blob Storage
Azure Blob Storage
An Azure service that stores unstructured data in the cloud as blobs.
2,939 questions
C#
C#
An object-oriented and type-safe programming language that has its roots in the C family of languages and includes support for component-oriented programming.
11,045 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Pinaki Ghatak 4,690 Reputation points Microsoft Employee
    2024-10-04T11:28:17.0566667+00:00

    Hello @MTBD

    One way to do this is to enable Application Insights for your function app. Application Insights can provide detailed telemetry data about your function app, including information about function invocations and dependencies.

    You can use this data to identify which functions are making the most calls to the GetBlobProperties API. To enable Application Insights for your function app, you can follow the steps outlined in this documentation: Monitor Azure Functions with Application Insights. Once you have enabled Application Insights, you can use the Application Insights Analytics tool to query the telemetry data and identify which functions are making the most calls to the GetBlobProperties API.


    I hope that this response has addressed your query and helped you overcome your challenges. If so, please mark this response as Answered. This will not only acknowledge our efforts, but also assist other community members who may be looking for similar solutions.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.