How to use Azure monitoring solution for containers? - azure

I have a resource group that looks like this:
I have added the container monitoring solution to my log analytics workspace. I have enabled application logging like so for my web app:
However, I can't find any logs anywhere. When I check the logs in both my web app, container monitoring solution and log analytics workspace it doesn't show me any logs. How can I "connect" my container to the container monitoring solution to view information about my container. I have read this article: https://learn.microsoft.com/en-us/azure/azure-monitor/insights/containers, but I couldn't understand from that how to actually use it in practice when I have an exisiting web app that I want to view in my monitoring solution. I guess what I'm looking for is a basic step-by-step guide to setup the whole web app-monitoring-analytics workspace solution.

Related

Is there any way of Accessing/ fetch application logs of AKS (Azure kubernetes Services) from outside or browser?

I have deployed a web application on Azure Kubernetes Service (AKS). I want to generate Application logs of deployed web application of cluster like Log folder. I want to access those logs from LOG folder through browser or any other solution which I can easily share with developers to access logs from their system as well.
You can use the logging options, cloud-native solutions like fluentD and you can push the logs from LOG folder to Elasticsearch or Azure logging solution and you can watch the logs into dashboard.
Fluentd : https://www.fluentd.org/
Check out more at : https://logz.io/blog/kubernetes-log-analysis/

Azure Web App with Linux Logging not works

i try my first steps with Azure. I have upload a WebApp (Blazor WASM Serverhosted) on a Linux System. Now i want to see the logs. My application brokes on Azure on startup. Everything I have tried has not worked.
The logstream shows nothing.
The Monitoring/logs are disabled
I activate in Monitoring/App Service Logs the File System and go to FTP Folder and i don't find a log-folder or something like this
I hope for help to fix my App or Configuration on Azure
Still the issue can be available in github . You can achieve this by using below steps.
Steps provided here. And I am deployed in Linux app service
Now you can be able to view the logs in application insights
You can add/modify the custom logs as well by using the custom telemetry client.
Refer here for detailed information

I have an API deployed to an Azure VM. I'd like to send all console output from this API to some cloud text storage for reading How do I do this?

As per the title, I just want all stdio output from this service to be sent to a cloud resource like cloudwatch logs or Azure Monitor so I can just read them in a time span. All stdio lines should be there.
The documentation for this seems nonexistent
This really depends on what tech that API is built on and what OS your VM is hosting. But the simplest way is IMO to enable the monitoring agent on your VM. Create a Log Analytics workspace and attach your VM straight from the portal. This way you can subscribe to different sources of logs and make them appear in your LA workspace, to be queried and filtered for further analysis.
Docs here: https://learn.microsoft.com/en-us/azure/azure-monitor/learn/quick-collect-azurevm
You output from your API can then within the VM be directed to either Windows EventLog or Linux syslog, which is supported out of the box in Log Analytics workspace and the monitoring agent. If your API runs in a container, say with docker, you can enable a special container monitoring solution on your created LA workspace - or you can configure docker to direct container logs to either syslog or EventLog directly.
If you run docker containers, here's a guide for configuring the logging driver: https://docs.docker.com/config/containers/logging/syslog/
If you run you API on IIS, you can simply enable IIS logs fetching on your LA workspace from the portal. However, this will only send HTTP logs and not stdout as far as I know.
If Anything else, please enhance your question.

What's the correct way to have webapp logs in Azure?

We are developing an application based on Azure webapps and are having troubles understanding how to get basic logs from them. There seems to be at least 3 different ways to get some logs:
I can access Kudu (?) logs using URL https://my-webapp.scm.azurewebsites.net/
I should be able to access the same (?) logs using az webapp log but when I use show command it says no logs are activated
I can also access some logs using the Diagnose and Solve Problems menu in the Azure UI but that's cumbersome
What I would like is very simply to be able to do a tail on logs on a running webapp and get all logs that are generated by it, whether it be HTTP request logs from the hosting HTTP server, system logs or applicative level logs.
Can someone point me at the right documents explaining what's the correct way to do that?
To diagnose issues is to look at trace files. Kudu service as well as its application write traces to the /Logfiles folder. You may refer to below link on this:
https://github.com/projectkudu/kudu/wiki/Diagnostic-Log-Stream
https://github.com/projectkudu/kudu/wiki/Kudu-console
Also, you need turn on the diagnostics logs from the Azure Portal or from Azure PowerShell (using the Set-AzureWebsite cmdlet).
If using Azure CLI to filter specific log types, such as HTTP, use the --Path parameter.
az webapp log tail --name appname --resource-group myResourceGroup --path http
Reference: Enable diagnostics logging for apps in Azure App Service

Run a console app in Azure and see the console output

I want to run a console application and see the output. It's a continuous one; I don't understand the other one.
I've got VisualStudio to deploy a console app to a WebJob, but I absolutely cannot get any output from it.
EDIT: why does the app service get a URL to 'browse' it? It's not a website.
EDIT: under HostingPlan->AppService->Diagnostic settings if I try to create a new diagnostic settings then there is a checkbox called AppServiceConsoleLogs which sounds promising, but it seems to require an Archive to storage account and none is listed even though I've set on up.
If you really published this as a "WebJob," then go to the "WebJobs" section of your AppService -- it's in the Settings section -- and it should display your WebJob in the list. Then right-click on your job and select "Logs." This will open the logs for your job. Click on the "Toggle Output" button and this should show you anything your app wrote to the console.
Edit:
Here is the WebJobs section of an App Service on the Azure Portal. If you Right-click on a specific job, it will show a (non-browser) context menu that gives you access to Logs.
If you have a subscription to Azure DevOps, you will be able to run your console app. Upload your console app and create a pipeline to run a script. Add the command and necessary arguments if any and run the pipeline.
The process may take around 10~15 minutes if you do not have an account with azure DevOps, and less if you have it already. Please follow the steps mentioned in the blog I wrote here and you should be able to run your console app without trouble.
How to run Console Applications on Azure Pipelines
PS: This may not be the best solution but as of now it offers free run of console apps on Azure Pipelines. Hope this helps!
why does the app service get a URL to 'browse' it?
Suppose it's your azure web url cause webjob is host in a web, if not please provide more information.
it seems to require an Archive to storage account and none is listed
even though I've set on up.
Mostly it's because your storage account region is different from your web region, so create a new account with the same region then it will show in the list.
And suppose you want to check the webjob output, the simplest way is the Bryan Lewis way, just check the Logs in the kudu page. Else if you want to save it to storage and view it, go to App Service logs under your web Monitoring, set the Application Logging (Blob) and set the storage account(remember the region should be same or create a new one). Then you will be able to view the log csv file like below.

Resources