Azure WebJobs:磁盘上没有足够的空间

时间:2015-05-20 15:42:35

标签: azure azure-webjobs

我已尝试压缩控制台应用并将其作为WebJob上传到Azure,就像我对其他人一样,但上传失败了。没有给出解释。

然后我尝试在那里FTP它。我把它放进去了

/site/wwwroot/App_Data/jobs/triggered/FeedbackNotifications

“FeedbackNotifications”是我的WebJob的名称。我走了this site的路径。

上传完成后,我可以看到Azure门户中列出的WebJob。但是,当我点击“运行一次”时,它会失败。日志文件包含以下内容:

  

[05/20/2015 15:26:22> e5f596:SYS INFO]状态已更改为   初始化

     

[05/20/2015 15:26:23&gt; e5f596:SYS INFO]状态已更改   <失败

     

[05/20/2015 15:26:23&gt; e5f596:SYS ERR]无法复制作业   files:System.IO.IOException:磁盘上没有足够的空间。

     

at System.IO .__ Error.WinIOError(Int32 errorCode,String   maybeFullPath)at System.IO.File.InternalCopy(String   sourceFileName,String destFileName,Boolean overwrite,Boolean   checkHost)在System.IO.File.Copy(String sourceFileName,String   destFileName,布尔覆盖)at   System.IO.Abstractions.FileWrapper.Copy(String sourceFileName,String   destFileName,布尔覆盖)at   Kudu.Core.Infrastructure.FileSystemHelpers.CopyDirectoryRecursive(字符串   sourceDirPath,String destinationDirPath,Boolean overwrite)at   Kudu.Core.Jobs.BaseJobRunner.b__0()at   Kudu.Core.Infrastructure.OperationManager&LT;&GT; c__DisplayClass1.b__0()   在Kudu.Core.Infrastructure.OperationManager.Attempt [T](Func`1动作,   Int32重试,Int32 delayBeforeRetry,Func`2 shouldRetry)at   Kudu.Core.Infrastructure.OperationManager.Attempt(动作动作,Int32   重试,Int32 delayBeforeRetry)at   Kudu.Core.Jobs.BaseJobRunner.CacheJobBinaries(JobBase job,IJobLogger)   记录器)[05/20/2015 15:26:23&gt; e5f596:SYS INFO]状态已更改为   失败[05/20/2015 15:26:23&gt; e5f596:SYS ERR] WebJob运行失败   to:System.InvalidOperationException:缺少工作目录   Kudu.Core.Jobs.BaseJobRunner.InitializeJobInstance(JobBase job,   IJobLogger记录器)   Kudu.Core.Jobs.TriggeredJobRunner&LT;&GT; c__DisplayClass2.b__0(对象   _)

包含所有内容的目录的总大小为115MB。

我还读过this page,这表明长文件名可能是导致错误的原因,但我的文件名不超过69个字符。

更新:我注意到当我尝试使用之前有效的其他WebJob时,会产生同样的错误。

1 个答案:

答案 0 :(得分:3)

第一次调用WebJob时(或更新其二进制文件时),首先将其复制到%TEMP%目录并从那里运行。

免费(sku)azure网站在Temp目录(实际上在d:\local)中的磁盘空间有限,即500MB。 看来你已经达到了它,所以WebJob无法启动。

要验证您是否可以访问您的scm站点的调试控制台(https:// {sitename} .scm.azurewebsites.net / DebugConsole)并查询d:\local上的可用空间(pushd d:\local或点击地球按钮。)