我认为这很简单,但几个小时后发现事实并非如此。我将一个“应用服务”部署到 Azure,它是一个 C# .Net Core。
我尝试使用 Console.WriteLine("my message") 或 Trace.TraceError("my message") 添加一些对应用程序的粗略监控,但我在 Azure 中的任何位置都找不到该输出。
我尝试启用 Application Insights,但也没有找到输出。
我只想用最简单的方法来了解我的应用程序中的一行代码是否受到攻击。最简单的方法是什么?
我尝试过的事情: 1) 我进入 Azure 中的控制台并浏览到可能具有此类输出的每个文件,但没有找到任何文件。当然,LogFiles 下的任何文件和文件夹中都没有任何内容。 2)我确实转到“应用程序服务日志”并启用了“应用程序日志记录(文件系统)”。 3)我还在“应用程序服务日志”中启用了“详细错误消息”。 4)我尝试了“诊断设置(预览)”,但找不到那里的输出。 5)我查看应用程序日志的“日志流”,但那里没有显示任何内容 6) 在“日志”下,我只有这样的消息:“我们没有找到任何日志” 7)“metrics”和“Alerts”都没有这个日志输出
我开始怀疑 Azure 不支持此功能。我是否需要添加一个像 serilog 这样的日志框架,只是为了一次向可能的应用程序添加一条语句,比如“You hit line 20”?我真的只是想要一些快速而肮脏的东西,但是在花了几个小时之后,它的“快速”部分并没有发生。
最佳答案
我所做的只是在 Azure 门户中启用应用服务日志。
具体来说,我在“详细”级别打开了“应用程序日志记录(文件系统)”,然后在“Web 服务器日志记录”选项中选择了“文件系统”
然后您可以使用左侧栏中的“日志流”来显示应用程序日志。
在您的代码中,您只需调用
System.Diagnostics.Trace.TraceInformation("My message!")
或者
System.Diagnostics.Trace.WriteLine("My message!")
就是这样!
这里我包含一些屏幕截图:
关于azure - 如何在 azure 应用服务中查看控制台或跟踪输出? Console.WriteLine 或 Trace.TraceError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60696690/