Function Azure功能应用程序日志未显示

Function Azure功能应用程序日志未显示,function,azure,logging,azure-functions,Function,Azure,Logging,Azure Functions,我对Azure比较陌生,我刚刚阅读了有关如何创建新Azure函数的教程,该函数在创建新blob时触发,并将其作为默认代码 public static void Run(Stream myBlob, string name, TraceWriter log) { log.Info($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes"); } 从我在教程中看到的内容来看

我对Azure比较陌生,我刚刚阅读了有关如何创建新Azure函数的教程,该函数在创建新blob时触发,并将其作为默认代码

public static void Run(Stream myBlob, string name, TraceWriter log)
{
    log.Info($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
}
从我在教程中看到的内容来看,我应该能够在代码下面的“日志”区域中看到一些信息,但没有显示任何信息,我已经检查了一段时间的解决方案,但似乎找不到任何有用的信息


任何帮助都将不胜感激。

日志窗口有点脆弱,并不总是显示日志。但是,日志也会写入日志文件

您可以从Kudu控制台访问这些日志:

从菜单中,选择调试控制台>命令

在文件列表中,进入日志文件>应用程序>函数>函数>[函数名称]


在那里,您将看到日志文件列表。

Azure Portal上周更新,他们将日志从监视器移动到实际Azure功能的主页。但是,要查看它们,您需要单击“测试”。我向微软的技术支持部门提出了一个问题,他们花了好几天的时间玩弄他们的大拇指,直到我自己找到了答案。我希望这能为其他人节省一点时间


事实上,Azure门户中函数应用程序的日志部分似乎很脆弱。我把它打开了几次,没有用过,然后它就不再记录任何东西了。关闭函数应用程序并重新打开它解决了问题

如果您在函数执行时正在查看该窗口,则应在函数代码下显示日志消息:

要查看未查看时生成的日志消息,需要配置应用程序洞察。如果已配置,则应在监视器选项卡下显示:

我将完全避免等待日志出现在函数应用程序中。走到左边的显示器上,从那边看。即使这样,他们也会有5分钟的延迟。aws究竟如何成为这个领域唯一能够立即向您提供日志的提供商?GCP也对它不利。。(对阿里云不太清楚)

遵循这里的建议对我很有效

如果希望在按下“Run”后立即在门户控制台中显示日志,请转到“Function app settings”并将以下内容添加到host.json文件中:

"logging": {
    "fileLoggingMode": "always",
    "logLevel": {
        "default": "Information",
        "Host.Results": "Error",
        "Function": "Trace",
        "Host.Aggregator": "Trace"
    }
}

注意,这只适用于Javascript函数。对于其他语言的本地开发功能,控制台可能会有点不稳定。

Microsoft不断更改界面,因此许多答案不再正确


我发现查看日志的最佳方法是进入函数本身的应用程序洞察,然后在事务搜索中搜索日志中可能存在的一些文本

我有大量缺少的日志。它似乎没有在合理的时间范围内将它们写入文件存储,而且昨天的每个日志文件都丢失了。我是否有一个糟糕的设置?完全关闭浏览器选项卡并重新打开它帮助了我。可能是信号员发布到浏览器时出现了一些问题?这种方式有时会奏效。但并非总是如此。直接检查文件夹中的日志文件是可恢复的。我有一个类似的问题,即我的功能日志不会显示(在Kudu或live stream中),除非我进入门户并单击“运行”,然后显示后续日志。这符合你的经验吗?您的讨论是否得到了支持?我发现不需要以这种方式运行函数来显示在日志中。例如,我正在运行一个时间触发功能,只要我在执行时查看日志控制台,就可以看到记录的消息,而无需单击“运行”。仅供参考,如果启用它,您通常可以在Application Insights中找到实时日志(您可能还需要添加“日志记录”)根据上面我的回答,将部分链接到host.json)。我同意这比查看CloudWatch日志更麻烦,但Azure在这里确实做得不错。这不再适用。此外,如果您是从ZIP文件运行,则无法编辑hosts.json