如何为 Azure 上的 Node.js Api 应用启用 BLOB 日志记录?
Posted
技术标签:
【中文标题】如何为 Azure 上的 Node.js Api 应用启用 BLOB 日志记录?【英文标题】:How to enable BLOB-logging for a Node.js Api App on Azure? 【发布时间】:2017-10-17 03:58:51 【问题描述】:我在 azure 上有一个 node.js api 应用程序。我使用bunyan
将每个请求记录到sdtout
。如何保存和读取日志文件?我启用了 BLOB 日志记录。我的存储中唯一出现的是一堆 csv 文件。这是一个例子:
| date | level | applicationName | instanceId | eventId | pid | tid | message
_______________________________________________________________________________________________________________________________________________________________
| 2017-05-17T14:21:15 | Verbose | myApp | tae9d6 | 636306276755847146 | 13192 | -1 | SnapshotHelper::RestoreSnapshotInternal SUCCESS - File.Copy
| 2017-05-17T14:21:15 | Verbose | myApp | tae9d6 | 636306276756784690 | 13192 | -1 | SnapshotHelper::RestoreSnapshotInternal SUCCESS - process
我打印到stdout
的日志在哪里?
【问题讨论】:
【参考方案1】:1) 如果不存在,则在您的根文件夹 (D:\home\site\wwwroot
) 中创建文件 iisnode.yml
。
2) 向其中添加以下行。
loggingEnabled: true
logDirectory: iisnode
完成后,您可以在D:\home\site\wwwroot\iisnode
中找到日志。
更多信息,请参考https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-nodejs-debug#enable-logging。
【讨论】:
非常感谢。我的iisnode.yml
被称为issnode.yml
不幸的是,这些日志可以通过网络访问。为什么 MS 不能只将您在“日志流”中看到的节点日志路由到 blob 中!?【参考方案2】:
在 iisnode.yml 中进行上述设置后,您看到 D:\home\site\wwwroot\iisnode 的日志来自 BLOB 存储或文件系统。
【讨论】:
以上是关于如何为 Azure 上的 Node.js Api 应用启用 BLOB 日志记录?的主要内容,如果未能解决你的问题,请参考以下文章