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的程序集。 –