在 Azure WebApp 部署中设置应用服务日志的保留期

Posted

技术标签:

【中文标题】在 Azure WebApp 部署中设置应用服务日志的保留期【英文标题】:Set Retention Period for App Service logs in Azure WebApp Deployment 【发布时间】:2021-12-30 01:30:27 【问题描述】:

我正在使用 az CLI 和 Biceps 文件部署 Azure WebService(Linux 容器)。以下是我的日志记录配置的摘录。

resource appConfigLogs 'Microsoft.Web/sites/config@2021-02-01' = 
  name: 'logs'
  parent: app
  properties: 
    detailedErrorMessages: 
      enabled: true
    
    failedRequestsTracing: 
      enabled: true
    
    httpLogs: 
      fileSystem: 
        enabled: true
        retentionInDays: 7
        retentionInMb: 50
      
    
  


据我了解,设置“retentionInDays”对应于“保留期(天)”,可在 Azure 门户中的 WebApp 资源 >“监控”>“应用服务日志”中找到。

通过 Portal 进行设置时,应用服务配置会使用名为“WEBSEITE_HTTPLOGGING_RETENTION_DAYS”的应用程序设置进行更新,并将其设置为相应的值。

当通过 ARM Deplyment 设置时(参见上面的二头肌),没有设置配置值。这是一个错误还是这两个设置“retentionInDays”/“保留期(天)”根本不相关?

【问题讨论】:

【参考方案1】:

通过 ARM 部署进行设置时(参见上面的二头肌),没有设置配置值。这是一个错误还是这两个设置“retentionInDays”/“保留期(天)”根本不相关?

这不是错误。“retentionInDays”/“保留期(天)”不是两个单独的设置。在 ARM 模板配置中为了使用保留期来存储一段时间的日志,我们使用此参数retentionInDays 相同的参数将在门户中显示为RententionPeriod(Days)

我们已经编写了一个 ARM 模板并在我们的本地环境中进行了测试,该模板运行良好。该模板将创建 Web 应用程序、存储帐户、启用应用程序服务日志和应用程序设置 WEBSEITE_HTTPLOGGING_RETENTION_DAYS,如下所示。

您可以参考this blogpost,了解有关使用 ARM 模板将应用服务器日志配置到存储帐户的更多信息。

【讨论】:

以上是关于在 Azure WebApp 部署中设置应用服务日志的保留期的主要内容,如果未能解决你的问题,请参考以下文章

使用tomcat 6在spring webapp中设置Commons Logging / Log4j的问题

如何在Azure中设置smtp服务器

Azure DevOps 在构建任务中设置内部版本号变量

在 Azure 应用配置中设置/添加功能标志

在 tomcat webapp 中设置身份验证的最佳方法是啥?

在 Azure DevOps 管道中为 WebApp 创建部署槽