Azure 诊断日志大小限制
Azure Diagnostic Logs Size Limitation
我是 运行 Azure 中的一个 Node.js 应用程序。现有的 Azure Web 应用程序日志记录功能将应用程序日志限制为最大大小,这意味着我无法检索一天前的日志(例如)。我可以从 Resource Explorer 修改一些 config/log 设置。
例如我可以编辑以下属性:
...
"httpLogs": {
"fileSystem": {
"retentionInMb": 35,
"retentionInDays": null,
"enabled": true
},
"azureBlobStorage": {
"sasUrl": null,
"retentionInDays": null,
"enabled": false
}
},
...
我没有看到 'applicationLogs' 的任何 'retentionInDays' 或 'retentionInMb' 属性。
"applicationLogs": {
"fileSystem": {
"level": "Off"
},
是否可以增加应用程序日志的存储时间或大小限制?
我建议将 STDOUT 和 STDERR 重定向到一个文件,这样您就不会依赖于 Microsoft 为您捕获和保存它们:
var access = fs.createWriteStream('./api.access.log');
process.stdout.write = process.stderr.write = access.write.bind(access);
事实证明,Azure 将 Web 服务器和应用程序日志记录限制为 12 小时,但这不适用于 Node.js 日志。日志文件总数有默认限制,设置为 10。
可以更改以下配置以适应您想要的任何内容,但由于性能受到影响,请注意不要在生产中这样做:
loggingEnabled: true
maxLogFileSizeInKB: 128
maxTotalLogFileSizeInKB: 1024
maxLogFiles: 20
我是 运行 Azure 中的一个 Node.js 应用程序。现有的 Azure Web 应用程序日志记录功能将应用程序日志限制为最大大小,这意味着我无法检索一天前的日志(例如)。我可以从 Resource Explorer 修改一些 config/log 设置。
例如我可以编辑以下属性:
...
"httpLogs": {
"fileSystem": {
"retentionInMb": 35,
"retentionInDays": null,
"enabled": true
},
"azureBlobStorage": {
"sasUrl": null,
"retentionInDays": null,
"enabled": false
}
},
...
我没有看到 'applicationLogs' 的任何 'retentionInDays' 或 'retentionInMb' 属性。
"applicationLogs": {
"fileSystem": {
"level": "Off"
},
是否可以增加应用程序日志的存储时间或大小限制?
我建议将 STDOUT 和 STDERR 重定向到一个文件,这样您就不会依赖于 Microsoft 为您捕获和保存它们:
var access = fs.createWriteStream('./api.access.log');
process.stdout.write = process.stderr.write = access.write.bind(access);
事实证明,Azure 将 Web 服务器和应用程序日志记录限制为 12 小时,但这不适用于 Node.js 日志。日志文件总数有默认限制,设置为 10。
可以更改以下配置以适应您想要的任何内容,但由于性能受到影响,请注意不要在生产中这样做:
loggingEnabled: true
maxLogFileSizeInKB: 128
maxTotalLogFileSizeInKB: 1024
maxLogFiles: 20