Azure App Service gives 503 Service Temporarily Unavailable - azure

I am a total newcomer to the Azure cloud. I have this .net-core 2.0 app which runs locally on my development PC (Ubuntu Linux 17.10).
I have followed this guide:
https://learn.microsoft.com/en-us/azure/app-service/containers/quickstart-dotnetcore
... and I have deployed my app to the App Service container.
However, when I go to the app in my browser I get:
"503 Service Temporarily Unavailable"
Now, there are probably thousand things which can go wrong. However, I can't seem to find any debug logs/console logs to look into - so I am kinda looking with my eyes closed (It's not easy to debug that way).
It should be noted that I am on a free trial which have given me a $200 credit to use in the next 30 days.
How do one debug when a service is failing (yes, I've already tried the various suggestions on the portal but with no luck)?

How do one debug when a service is failing?
You could check deployment log on Azure Portal.
Click first commit, you will see the log.
Also, you could access Kudu console to check the log. You could access http://<webapp name>.scm.azurewebsites.net

Migrating OP's self-answer from the question:
I solved this by adding this to the PropertyGroup in my *.csproj file:
<PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>
(as per: https://github.com/aspnet/IISIntegration/issues/476)
Now my app works and gives the expected output.

Related

"403 - This web app is stopped" when deploying to Azure from VSCode

I have a web app, ironradio.org, that I've deployed on Azure from VSCode. I've made some updates to the site and am now trying to deploy the newest version. Now when I try to deploy using this button:
I get the error 403 - This web app is stopped in the output window:
I've already deployed several versions of the site using the same method and it's never failed before. Also, the app is definitely not stopped because I can still browse to the site and it shows up.
My best guess as to what's going on is that I associated the App Service with a new resource group since the last deployment, so maybe VSCode isn't recognizing that? Does anyone have any idea what's going on here?
I tried the link given in the error message, but it wasn't much help.
Microsoft foreseen this type of error and how it can affected its customers greatly and this is why the deployment slot is for you.
Firstly, you have to delete the app and reupload again except you set up continuous deployment which work mostly with GitHub and other version control platforms.
Apart from this, I will suggest you check out the deployment slot docs. It’s very simple and easy to use
https://learn.microsoft.com/en-us/azure/app-service/deploy-staging-slots

.NET5 Blazor Server app in Azure App Services returns "You do not have permission to view this directory or page"

I am trying to deploy a Blazor Server app using .NET5 to an Azure App Service via Azure DevOps.
The Blazor app runs and works correctly locally. The Azure DevOps pipeline appears to also be building and deploying correctly. If I use the console in the Azure portal I can see that the files I would expect are in the wwwroot folder (which I guess is correct?). In Configuration > General Settings I can see that the App Service is correctly configured for .NET 5. On the network side there are currently no access restrictions. I've also turned off all auth in the app for now just to make sure that wasn't having an impact.
When I try to access the site at https://my-app.azurewebsites.net (not the real url, just an example in case it's relevant) I get a white page with the following text: "You do not have permission to view this directory or page.". When I look in the Diagnostics dump from the Kudu page I can see more detail error pages which say 403.14 - Forbidden and the message "The Web server is configured to not list the contents of this directory.". If I look in App Insights for the times when I try to access it I can see requests with 403 response too (for some reason with url: http://localhost/). Unfortunately this error seems to cover a multitude of errors and so while I've found various sources with similar problems, none of the solutions I've found so far have had any positive impact.
EDIT: So I did some more digging and I think some files might be missing. I tried creating a new Blazor Server app and publishing it manually via Visual Studio. This worked and the only difference I've found from my app is that I have no web.config, hostingstart.html, or static css/js etc (from wwwroot). None of these files are in the output directory when I build for either my app or the test app I created so it looks like they must be getting added separately by something in the VS manual publish process and Azure DevOps publish step isn't doing it. Still not sure what the correct way to fix this is (or even entirely sure if any or all of this stuff is relevant).
Has anyone out there got any idea what I might be missing?
So after working out what was going on here I was going to delete this but I figured possibly someone else will make the same mistake I did and this might help. Basically I'd copied another deployment pipeline for an Azure function app as the basis for the deployment pipeline for this and in that I just did a dotnet build and that's enough. However it seems for this kind of app to get wholesome output you need to run dotnet publish.

Prevent Azure from shutting down my App Service

I am running a .NET Core web application on an Azure App Service (App Service plan is configured to use S1). It is stable.
However, I recently ran an automated test against production and it caused 100s of errors in a few minutes. After this, the App Service became unavailable for a long time.
I know that App Service basically uses IIS and I know that there is a setting in IIS that will shut down an App Service on too many errors in a short time. I am assuming that this is the setting that came into effect for my app.
My question is: How do I prevent Azure from shutting down my App Service, even if many errors happen in a short time?
Investigate the "Always On" setting that can be changed in the Azure Portal under Application settings, General Settings. This value is configured per App.
The UI control will be disabled if your price tier does not support always on. Typically these lower priced levels in the pricing tiers are not used for a production site.
I recently ran an automated test against production and it caused 100s of errors in a few minutes. After this, the App Service became unavailable for a long time.
Firstly, you can enable diagnostic functionality for App Service web app to log information from both the web server and the web application, which will help you troubleshoot the issue.
Secondly, you can try to increase the number of instances that run your app and check if it can mitigate the issue.
Besides, if possible, you can set up staging environment and do automated test on staging environment instead of production environment, which will not cause your production shutting down for long time when you do automated test on staging.
I am not sure whether this problem was correctly diagnosed back in 2017 when I was using a .NET Core WebApp. Maybe it was or maybe it wasn't.
However, I have today in late 2019 on Azure Functions V2 and .NET Core 2.2 recreated the same scenario and provoked 5000 unhandled exceptions in one minute and the Function did not go down because of that.
So anyone finding this question can pretty much rest assured, if they are on Azure Functions V2 or newer - it does not crash just because of the quantity of exceptions like it was the case with default settings in IIS in the past.

How to resolve error 500 on Azure web app?

What I have:
VS2015U2
ASP.NET 5 MVC 6 website
Deployed to Azure Web App
The site works locally
When I deploy to Azure I get internal server error (500)
I'm unable to Attach a debugger since they messed up something with the latest versions (tried manually too https://azure.microsoft.com/en-us/blog/introduction-to-remote-debugging-on-azure-web-sites/)
I have app.UseDeveloperExceptionPage(); but I guess the site is failing during configuration so it doesn't display any other information.
So how to resolve this? I need to see the .net exception but I have no idea how to do that.
Try adding Application Insights to the app. You should see errors on startup of your application.
I would also take a look at your startup code to see if you are writing to disk anywhere during configuration or app.start. This might be the case if you are using AAD in any capacity.
You can also hit up the KUDU console by targetting https://sitename.scm.azurewebsites.net . You will be able to navigate in the debugging console to see the RAW logs from IIS. That might shed some light into the situation. See KUDU for more info.
I solved this problem like show below.HTTP 500 error interested about that is not allowed to access the server.Go to azure portal address and choose your database.Press"Set server firewall " and Allow Azure services and resources to access this server choose "Yes" save that page and refresh your service.Than you can see your data
Use the KUDU console at https://sitename.scm.azurewebsites.net
Go to web.config file and check if the process path is correct.
I used the Azure Log Stream to help figure out what was going on. As Karishma Tiwari - MSFT said, the issue ended up being my web.config file (which was built for .NET 3.5 and not 4.7)
Here's the tutorial to set up Log Streaming: https://blogs.msdn.microsoft.com/azureossds/2016/09/28/how-to-identifyreview-errors-on-php-applications-in-azure-web-apps-using-log-stream-service/
My particular app's solution was to update my Azure App Service to use .NET 3.5, in its Application Settings, like so:
For me it worked after I turned "Allow Azure services and resources to access this server
" to Yes
I got this error even though I had enabled Application Logging (Filesystem), Detailed error messages and Failed request tracing in App Service logs
This page isn’t working
mysite.azurewebsites.net is currently unable
to handle this request.
HTTP ERROR 500
However by navigating to Log stream and selecting Application Logs I could see a detailed error message:
I know this question has already been answered but here is a recent view of the Azure Portal where I found a solution to this problem

Azure deployment fails because service not found

I am currently trying to deploy a cloud service to Windows Azure but I get the following error message:
"Could not retrieve the list of cloud services.[...]"
Details can be seen on the picture.
It seems to me that VS couldn't find an existing service role in the subscription but my service is available and running, I just can not deploy a new version there.
A few days ago it worked correctly. Any Idea would be appreciated.
Thank you!
After hours of Certificate generation, messing with azure toolkit, etc. I figured out that the problem was that somehow my computer tried to resolve the azure DNS to localhost because Fiddler got crazy and the proxy that Fiddler uses, haven't stopped even after restarting my computer.
I faced same problem, when trying to deploy to azure while fiddler is running. Simply closing fiddler solve the problem.
Go to the previous screen, there will be an option of connecting to Azure using your credentials. Select your subscription and you will be able to download a file to your local machine. That file contains your subscription info as well as the keys. Once you open that file through this wizard, you will be able to publish to your services. You must create cloud services first before you do that.

Resources