Azure WebApp未将应用程序日志发送到Blob存储

时间:2017-06-23 18:08:05

标签: azure logging azure-web-sites azure-storage-blobs azure-diagnostics

我的团队有多个运行 Node.js 应用程序的 Azure WebApps(Windows)。我们使用 Winston库来记录服务活动(例如,请求)。我们已在每个中配置了诊断日志记录,以将日志存储在Blob存储资源中。

使用 Microsoft Azure存储资源管理器,我们可以看到Blob存储中有多个容器。它似乎按小时收集信息,但只有'快照'条目作为CSV文件和.log文件几乎没有信息。文件很小,但不应该是这种情况,因为流量是一致的,我们记录了相当数量。

我们的日志记录以文件系统格式工作,但它显然无法在blob存储中运行。我们似乎无法找到我们的日志未存储在存储帐户中的原因。

是否需要其他配置?

1 个答案:

答案 0 :(得分:3)

根据您的说明,我检查了您的问题,发现我只能从KUDU路径console.log通过console.errorD:\home\LogFiles\Application\进行记录。然后我在azure web app上找到了关于node.js的应用程序日志的blog,如下所示:

  

在Azure门户中设置应用程序日志

     

对于node.js网站,编写应用程序日志的方法是使用console.log('message')和console.error('message')写入控制台,然后转到信息/错误级别日志条目。目前,node.js日志文件唯一受支持的目标是文件系统。

     

应用程序日志功能不支持php和python等其他网站类型。

这是用于流行的nodejs记录器的Azure blob存储适配器,例如winston:winston-azure-blob-transport,您可以利用它来解决方法,将您的node.js网站上的应用程序日志收集到azure blob存储中。