[英]FileUploadMiscError azure batch output file
我正在尝试使用c#完成天蓝色批处理云任务后将输出文件上传到Azure blob。 我的代码运行正常,但是给出了FileUploadMiscError-任务失败针对不同任务随机出现“上载输出文件之一时遇到杂项错误”错误。
ContainerSASUrl代码 -
SharedAccessBlobPolicy sasConstraints = new SharedAccessBlobPolicy
{
SharedAccessExpiryTime = DateTime.UtcNow.AddHours(sasUrlExpirationTime),
Permissions = SharedAccessBlobPermissions.Write
};
string sasContainerToken = string.Empty;
CloudBlobContainer container = BlobClient.GetContainerReference(containerName);
if (await container.CreateIfNotExistsAsync())
{
sasContainerToken = container.GetSharedAccessSignature(sasConstraints);
}
sasContainerToken = container.GetSharedAccessSignature(sasConstraints);
string outputContainerSasUrl= string.Format("{0}{1}", container.Uri, sasContainerToken);
任务提交 -
CloudTask task = new CloudTask(taskId, taskCommandLine)
{
OutputFiles = new List<OutputFile>
{
new OutputFile(
filePattern: @"../std*.txt",
destination: new OutputFileDestination(
new OutputFileBlobContainerDestination(
containerUrl: outputContainerSasUrl,
path: jobdetails.JobId+"/output")),
uploadOptions: new OutputFileUploadOptions(
uploadCondition: OutputFileUploadCondition.TaskCompletion)
),
new OutputFile(
filePattern: @"%AZ_BATCH_JOB_PREP_WORKING_DIR%\*.dat",
destination: new OutputFileDestination(new OutputFileBlobContainerDestination(
containerUrl: outputContainerSasUrl,
path:jobdetails.JobId+"/output")),
uploadOptions: new OutputFileUploadOptions(
uploadCondition: OutputFileUploadCondition.TaskCompletion))
}
};
task.UserIdentity = new UserIdentity(new AutoUserSpecification(AutoUserScope.Pool, ElevationLevel.Admin));
task.ResourceFiles = inputFiles;
TaskConstraints taskConstraints = new TaskConstraints();
taskConstraints.MaxTaskRetryCount = 2;
task.Constraints = taskConstraints;
这段代码可以正常工作,但是随机失败
您可以检查应该与任务stdout.txt和stderr.txt一起编写的fileuploadout.txt和fileuploaderr.txt吗? 理想情况下,如果您可以在此处共享它们(请确保删除其中记录的所有详细信息,例如SAS)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.