Unexpected RAM consumption in Azure - azure

I created B1 App Service plan which has 1.75 GB of RAM. I also created one App Service and deployed docker image to it. Right now I stopped the docker image and it has status stopped and it is the only app in that app service plan. The problem is that when I look into Overview of My App Service Plan I see that RAM usage is about 50% - what is using that RAM if my only App Service in that App Service Plan is stopped? How can I check it?
here you can see print screens: https://imgur.com/a/bycVd9U

There are a many things that run in the background. If you have diagnostic logging enabled, backups, any webjobs, etc. those things will cause a rise in your CPU usage.

Related

Which metric can i monitor for Azure App Service CPU and Memory usage?

I have an 3 app servies running in an App Service plan in Azure. I am setting up a metric alert if the CPU % or Memeory usage on the App Service plan has reached a thresheold.
But I want to monitor each app service and the instances on each service as some have been scaled. The only mertric measure for CPU is CPU working set , but how does this monitor the CPU uage for the app service as the unit is in sec ?
After reproducing from my end, I could able to achieve your requirement while navigating to your App service >> Diagnose and solve problems >> Search for CPU Drill Down.
You can monitor other App Services as shown in the below image

Azure process explorer not reporting all memory

I'm trying to understand memory reporting in the Azure App Service. I have an Azure App Service plan of "S1" which includes 1.75 gigs of ram.
When I look in the Kudu process explorer and add up and add up all of the "private memory" of various , my app is using ~990mb. I don't have any other processes or deployment slots running. One single App Service, 1 deployment slot running.
However, in the dashboard, it says my memory percentage usage is 82% (very stable between 80-85% btw). 82% of 1.75 gig is 1.4 gig.
So I'm trying to figure out where the other 400 meg is going, or if the dashboard is incorrect? Are there other processes which are running which aren't included in the process explorer? The details of the process explorer is
w3wp.exe (<- main app service) ~765 meg
snapshotuploader64.exe ~33 meg
snapshotuploader64.exe ~33 meg
w3wp.exe (scm) ~126 meg
cmd.exe ~4 meg
DaasRunner.exe ~30 meg
In kudu -> Process Explorer, it only shows the memory used by the scm site and the web instance.
In fact, the memory is also used by the hosting environment like OS / other background tasks, which are not reported in Process Explorer. Even if you create an empty azure web app, in the dashboard, you can still see the memory is used around 50%.
There're some feedbacks / issues about that, see here and here.

App service plan calculation for multiple app in single app service plan and its scalability

I know that there is already some question around this. I am still confused about pricing.
My scenario is following
1 App Service Plan ( Standard s2 , 3.5 RAM , 50 GB size)
6 App Service belong to that plan.
Does it means that all 6 apps share 3.5 RAM and 50 GB storage or each app has 3.5 GB RAM and 50 GB ?
Also plan states that 10 instance auto scale. What does this actually mean ? Each app service scale at moment or each app service scale separately.
All 6 apps would share the same resources:
When you create an app in App Service, it is put into an App Service plan. When the app runs, it runs on all the VM instances configured in the App Service plan. If multiple apps are in the same App Service plan, they all share the same VM instances. If you have multiple deployment slots for an app, all deployment slots also run on the same VM instances. If you enable diagnostic logs, perform backups, or run WebJobs, they also use CPU cycles and memory on these VM instances.
As far as scaling that is done at the app service plan so again the scale will apply to all app services:
In this way, the App Service plan is the scale unit of the App Service apps. If the plan is configured to run five VM instances, then all apps in the plan run on all five instances. If the plan is configured for autoscaling, then all apps in the plan are scaled out together based on the autoscale settings.

High CPU usage was detected for the kudu app for Azure App service

I noticed that our app was experiencing high CPU usage. In the diagnostics I found the below message.
High CPU usage was detected for the kudu app for 'DemoApiApp'(39.1%) on only one instance out of 4 instances in your app service plan. The affected instance had a peak overall usage of 87.8% during this time. High CPU usage in the kudu process is most often caused by web job usage. Affected instance name: RD0003FF1C445A
Note that, apps in the same App Service plan share the same compute resources. To determine whether the new app has the necessary resources, you need to understand the capacity of the existing App Service plan, and the expected load for the new app. Overloading an App Service plan can potentially cause downtime for your new and existing apps. Refer App Service limits for more details.
As specified in the documentation, isolate your app into a new App Service plan when:
-The app is resource-intensive.
-You want to scale the app independently from the other apps the existing plan.
-The app needs resource in a different geographical region.
If your process is running slower than expected, or the latency of HTTP requests are higher than normal and the CPU usage of the process is also high, you can remotely profile your process and get the CPU sampling call stacks to analyze the process activity and code hot paths. Refer Remote Profiling support in Azure App Service for more details.
Hope this helps.

How to change basic to standard tier in Azure

My app deployed in Azure with basic tier having 10GB space. Now it showing the usage warning error in Server. So I want change the scale from basic to standard. Then which instance size should choose having ( Small-1 core, Medium-2cores and Large- 4 cores) ? Also while saving following notifications are showing
In Standard mode, if a web app is stopped, billing continues, and changing the scaling for an app affects other apps. Are you sure you want to continue?
This will scale the following web apps in the East US 2 region. This can take several minutes to complete. Your web apps will keep running during the process.
please help
To answer your question, here is a table with App Service sizes in which you can see that the Standard size has 50GB and the Premium has 500GB of disk space.
To answer your other questions:
The reality is that you pay for the App Service Plan, each plan can host dozens of Apps. Think of it as a Platform running all the time that hosts your Apps, if you stop one App, the Platform is still running (because you might have other Apps running on it), and thus, you are still charged for it.
Like I said, because what you pay is the App Service Plan, scaling the Plan will automatically scale all the Apps contained in it, that's the reason of the second message.
Think of the App Service Plan as a server in which you run your Apps, the moment you delete all the Apps in the Plan, the Plan stops billing, but as long as you have at least one App (running or stopped) in it, it will keep charging.

Resources