2

我一直在写一webjob有斑点手表(如http://www.hanselman.com/blog/IntroducingWindowsAzureWebJobs.aspx天青webjobs“无效容器名称”间歇性的错误

不时和没有警告,我收到“无效容器名称”从线路异常

host.RunAndBlock(); 

尽管没有更改App.config中的容器名称,并且访问blob存储的其他方法都有效。

这里的任何人堆栈跟踪谁在乎经历吧:

The thread '<No Name>' (0x17bc) has exited with code 0 (0x0). 
    at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo) 
    at System.Environment.get_StackTrace() 
    at BarcodeJob.Program.Main() in c:\Users\Nik\Documents\Visual Studio 2012\Projects\BarcodeJob\BarcodeJob\Program.cs:line 34 
    at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args) 
    at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) 
    at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() 
    at System.Threading.ThreadHelper.ThreadStart_Context(Object state) 
    at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) 
    at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) 
    at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
    at System.Threading.ThreadHelper.ThreadStart() 

和错误消息

System.FormatException: Invalid container name: 
    at Microsoft.WindowsAzure.Jobs.BlobClient.ValidateContainerName(String containerName) 
    at Microsoft.WindowsAzure.Jobs.CloudBlobPath..ctor(String blobInput) 
    at Microsoft.WindowsAzure.Jobs.LogRow.ToPath() 
    at Microsoft.WindowsAzure.Jobs.BlobLogListener.<GetRecentBlobWrites>d__0.MoveNext() 
    at Microsoft.WindowsAzure.Jobs.BlobListener.Poll(Action`1 callback, CancellationToken cancel) 
    at Microsoft.WindowsAzure.Jobs.Listener.PollBlobs(CancellationToken token) 
    at Microsoft.WindowsAzure.Jobs.Listener.Poll(CancellationToken token) 
    at Microsoft.WindowsAzure.Jobs.Worker.Poll(CancellationToken token) 
    at Microsoft.WindowsAzure.Jobs.JobHost.RunAndBlock(CancellationToken token, Action pauseAction) 
    at Microsoft.WindowsAzure.Jobs.JobHost.RunAndBlock(CancellationToken token) 
    at Microsoft.WindowsAzure.Jobs.JobHost.RunAndBlock() 
    at BarcodeJob.Program.Main() in c:\Users\Nik\Documents\Visual Studio 2012\Projects\BarcodeJob\BarcodeJob\Program.cs:line 30 
+0

这看起来像是从SDK的Blob侦听代码中间崩溃。你有没有其他的东西可以在创建/删除容器的存储帐户上运行?也许这是绊倒blob的听众。 它看起来像containerName是空的或空白的。发生这种情况时,您是否偶然知道BlobInput参数对CloudBlobPath..ctor()是什么? –

+0

运行的唯一其他实体是Azure存储查看器,因此不会创建或删除容器。 我的确有复制工作,然后从CloudBlockBlob对象中删除blob。虽然我测试了该代码评论,但仍然存在此问题。公共静态void RunNewUpload([BlobInput(“input/{name} .pdf”)] Stream input,String name,[BlobOutput(“output/{name} .pdf”)) ]流输出){ – downtowncanada

回答

1

这是一个多实际问题的错误报告。 ..所以这里没有具体的问题需要回答,但我可以确认callstack肯定会导致它是WebJobs SDK中的一个错误。我们已经提交了一个错误,并希望在Alpha 2版本中修复它。这些版本通过nuget完成,因此Alpha 2将显示在:http://www.nuget.org/packages/Microsoft.WindowsAzure.Jobs.Host

+0

(对.net/azure是新的)在callstack中,你看到所述的指控吗? – downtowncanada

+0

callstack在MS.WindowsAzure.Jobs中显示框架,这是WebJobs SDK的程序集。 –