2014-10-20 51 views
0

使用Azure管理REST API,我尝试使用重试策略更新(PATCH)现有调度程序作业。该请求被接受,但json响应对象不包括重试策略条目。设置Azure调度程序作业重试策略

在更新的情况下,我做出的其他更改反映在响应中。

Azure的调度作业的实体结构:http://msdn.microsoft.com/library/azure/dn528941.aspx

Azure的调度REST API参考:http://msdn.microsoft.com/en-us/library/azure/dn528946.aspx

我已经使用打嗝套房快速通过不同的请求重复,但我从来没有看到任何建议重试政策已经被创造了。

我错过了什么?

以下请求将创建一个新的作业名SampleJob20(无重试策略)

PUT /<subid>/cloudservices/<cloudservicename>/resources/scheduler/~/JobCollections/<jobcollectionname>/jobs/SampleJob20?api-version=2014-04-01 HTTP/1.1 
Content-Type: application/json 
x-ms-version: 2012-03-01 
Host: management.core.windows.net 
Content-Length: 583 



{ 
    "startTime": "2013-01-30T12:08:00-08:00", 
    "action": 
    { 
     "type": "http", 
     "request": 
     { 
      "uri": "http://bing.com/", 
      "method": "GET", 
      "headers": 
      { 
       "Content-Type": "text/plain" 
      } 
     } 
    }, 
    "recurrence": 
    { 
     "frequency": "minute", 
     "interval": 30, 
     "count": 1000 
    }, 
    "state": "enabled" 
} 

该请求的回应是:

HTTP/1.1 201 Created 
Cache-Control: no-cache 
Pragma: no-cache 
Content-Length: 364 
Content-Type: application/json; charset=utf-8 
Expires: -1 
Server: 1.0.6198.148 (rd_rdfe_stable.141019-1428) Microsoft-HTTPAPI/2.0 
x-ms-servedbyregion: ussouth2 
X-AspNet-Version: 4.0.30319 
X-Powered-By: ASP.NET 
x-ms-request-id: xxxxxxxxxxxxxxxxx 
Date: Mon, 20 Oct 2014 19:13:40 GMT 

{ 
    "id":"SampleJob20", 
    "startTime":"2013-01-30T20:08:00Z", 
    "action": 
    { 
     "request": 
     { 
      "uri":"http:\/\/bing.com\/","method":"GET", 
      "headers": 
      { 
       "content-Type":"text\/plain" 
      } 
     }, 
     "type":"http" 
    }, 
    "recurrence": 
    { 
     "frequency":"minute", 
     "count":1000, 
     "interval":30 
    }, 
    "state":"enabled", 
    "status": 
    { 
     "nextExecutionTime":"2014-10-20T19:38:00Z", 
     "executionCount":0, 
     "failureCount":0, 
     "faultedCount":0 
    } 
} 

当我尝试并更新此工作了重试策略。该响应缺少重试策略的详细信息。

PATCH /<subid>/cloudservices/<cloudservicename>/resources/scheduler/~/JobCollections/<jobcollectionname>/jobs/SampleJob20?api-version=2014-04-01 HTTP/1.1 
Content-Type: application/json 
x-ms-version: 2012-03-01 
Host: management.core.windows.net 
Content-Length: 451 



{ 
    "id": "SampleJob20", 
    "action": 
     { 
      "type": "http", 
      "request": 
      { 
        "uri": "http://bing.com", 
        "method": "GET", 
        "headers": 
        { 
         "Content-Type": "text/plain" 
        } 
      }, 

      "retryPolicy": 
      { 
       "retryType":"fixed", 
       "retryInterval": "PT1M", 
       "retryCount": 3 
      } 
     } 
} 

如果我使用重试策略创建新作业,则响应包含重试详细信息。但是,作业重试策略也不能更新。

回答

0

你可以尝试把一个新的或相同的工作是这样的(它包括PUT请求重试政策)

PUT

{ 
"startTime": "2013-01-30T12:08:00-08:00", 
"action": 
{ 
    "type": "http", 
    "request": 
    { 
     "uri": "http://bing.com/", 
     "method": "GET", 
     "headers": 
     { 
      "Content-Type": "text/plain" 
     } 
    }, 
     "retryPolicy": 
     { 
      "retryType":"fixed", 
      "retryInterval": "PT1M", 
      "retryCount": 3 
     } 
}, 
"recurrence": 
{ 
    "frequency": "minute", 
    "interval": 30, 
    "count": 1000 
}, 
"state": "enabled" 
} 
+0

是这个工程确定。重试策略已设置。如果我随后发送另一个PUT并对重试策略(或任何其他更改)进行更改,则会在响应中反映出来。问题是提交PATCH请求。当我提交一个PATCH请求来说改变这个URL的作品OK。如果我发送PATCH请求来更新重试策略(将其更改为retryCount为4),则这不起作用。 – 2014-10-24 09:29:20

+0

安迪,我们还没有支持重试策略的路径。我已经添加了它,并且您应该能够提出与上述问题相同的修补程序请求,并且看到它成功。(将从现在起大约2周内发货) – 2014-10-31 23:03:01

+0

感谢您的更新。 – 2014-11-03 08:31:47