通过ARM模板的Web App和应用程序见解

时间:2018-08-14 10:05:20

标签: azure azure-application-insights azure-resource-manager

我创建了一个ARM模板,该模板创建了与该模板(https://github.com/tomasr/webapp-appinsights)类似的App Service(Web应用程序)和Application Insights资源。 App洞察力已连接到Web应用程序,并且一切正常,唯一的问题是,作为可用性测试的一部分,App洞察力自动生成对我Web应用程序根目录的请求,该请求始终返回错误,因为我的根路径中没有任何内容(即使我有,它也会调用http而不是https url)。模板中没有设置此请求的内容,并且如果我转到可用性属性,则没有任何内容。有没有办法关闭此功能或将其配置为调用有效的URL?

1 个答案:

答案 0 :(得分:0)

如果应用程序服务始终处于打开状态,那么通过不定期地使用HTTP GET对HTTP GET ping根目录来阻止应用程序处于空闲状态的方法,就有一种重写方法。

您可以创建一个重写规则,该规则的条件是可以检测到它是“始终在线”请求,如果是,请使其符合您指定的另一个URL。 这是一个示例:

<?xml version="1.0" encoding="UTF-8" standalone="no">
<configuration>
    <system.webServer>
      <rewrite>
        <rules>
          <rule name="Rewrite AlwaysOn" stopProcessing="true">
            <match url="^$" />
            <conditions>
              <add input="{HTTP_USER_AGENT}" pattern="^AlwaysOn$" />
            </conditions>
            <action type="Rewrite" url="/api/Online/Ping" />
          </rule>
        </rules>
      </rewrite>
    </system.webServer>
</configuration>

我从https://blogs.msdn.microsoft.com/benjaminperkins/2018/08/10/how-to-optimize-azure-app-service-alwayson-cold-start-warm-up-request/

找到了原始文章

如果您有将HTTP重定向到HTTPS的重写规则,则应在此之前添加此规则。