App Service 服务URL没法访问,进入门户中的Advanced Tools(Kudu)、App Service Editor (Preview)等页面没法打开, 打开就出现 The service is unavailable 错误。php
因为没法打开高级工具(Kudu)并收集当前应用的日志,而根据错误消息“The service is unavailable”代表后端Host当前App Service的虚拟机实例出现了问题,那么能够经过人为的操做来改变后端实例。根据App Service不一样订价层所使用的VM大小不同,及多实例的设计原理,能够经过如下两种方式来改变后端实例:web
1)增长订价层,把当前的实例级别提高(在 Azure 应用服务中纵向扩展应用:https://docs.azure.cn/zh-cn/app-service/manage-scale-up#scale-up-your-pricing-tier)后端
2)增长,减小实例个数(增长用于运行应用的 VM 实例数。 能够根据订价层,最多向外缩放到 30 个实例)app
经过以上操做后,进入Kudu站点,查看 Logfiles 中日志,最终收集到App Service的日志,在日志中发现异常关键信息: There is not enough space on the disk.ide
异常消息全文:工具
System.Exception: Per site php.ini file was not created. ---> System.IO.IOException: There is not enough space on the disk.ui
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)spa at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)设计 at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)3d at System.IO.StreamWriter.CreateFile(String path, Boolean append, Boolean checkHost) at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize, Boolean checkHost) at System.IO.File.InternalWriteAllText(String path, String contents, Encoding encoding, Boolean checkHost) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.CreatePerSitePhpSettingsFile(StartSiteContext startSiteContext, String phpIniConfigPath, String phpInstallationPath, Version phpVersion) --- End of inner exception stack trace --- at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.CreatePerSitePhpSettingsFile(StartSiteContext startSiteContext, String phpIniConfigPath, String phpInstallationPath, Version phpVersion) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.SetupPhpCallback(StartSiteContext startSiteContext, ICollection`1 configurationFiles, Version version, Boolean is64bit, String installationPath) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.<>c__DisplayClass16_0.<CreateWorkItem>b__0(Version version, Boolean is64bit, String path) at Microsoft.Web.Hosting.StartSiteContext.SetupPhp(Func`4 versionCallback) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.CreateWorkItem(StartSiteContext startSiteContext, DateTime requestTimestamp, ServiceContextMode mode, PerfData coldStartPerfData, String coldStartRequestId, Boolean handlingChangeNotification, Boolean isPrewarmPing, GetZipFromFileCacheTask getZipTask) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.ProvisionSiteInNormalMode(DateTime startTime, StartSiteContext startSiteContext, PerfData coldStartPerfData, String appHostPath, String requestId, Boolean isRequestFromExternalSource, Boolean isPrewarmPing) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.StartHostNameInternal(String hostName, Int32 serverPort, String token, String requestId, Boolean isHttpForward, Boolean isPrewarmPing) at Microsoft.Web.Hosting.ProcessModel.SiteStartAndChangeManager.StartHostName(String hostName, Int32 serverPort, String token, String requestId, Boolean isHttpForward, Boolean isPrewarmPing) |
进入Kudu -> Debug Console,而后选择 cmd
,以下图:
du -sh *
查看具体文件占用大小,如图所示:
在 Azure 应用服务中纵向扩展应用:https://docs.azure.cn/zh-cn/app-service/manage-scale-up#scale-up-your-pricing-tier
如何检测 Web 应用沙盒环境文件系统存储量: https://docs.azure.cn/zh-cn/articles/azure-operations-guide/app-service-web/aog-app-service-web-howto-detect-file-storage-in-sandbox-environment