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.

Azure Blob Storage
Azure Blob Storage

An Azure service that stores unstructured data in the cloud as blobs.

Developer technologies | .NET | Other
Developer technologies | C#
Developer technologies | 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.

0 comments No comments

1 answer

Sort by: Most helpful
  1. Pinaki Ghatak 5,700 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.

    Was this answer helpful?

    0 comments No comments

Your answer

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