Windows Azure 작업자 역할과 동일한 코드 기반을 실행하는 여러 서비스가 있습니다. 현재 실행중인 코드가 특정 인스턴스에서 실행 중인지 테스트하고 확인하려고합니다. 내가 관리 API이로 호출하는 경우 :Windows Azure에서 배포 ID 일치
<Deployment xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Name>c8bd3b12f1bc4e0db9d8c1d59e97e48b</Name>
<DeploymentSlot>Production</DeploymentSlot>
<PrivateID>d1ea61e367e84aedb68de97eded3e896</PrivateID>
<Status>Running</Status>
<Label>SXRlbVVwZGF0ZXIgLSAzLzEzLzIwMTMgMTA6NDQ6MTUgQU0=</Label>
<Url>http://itemupdater3.cloudapp.net/</Url>
<RoleInstanceList>
<RoleInstance>
<RoleName>UpdateItems</RoleName>
<InstanceName>UpdateItems_IN_0</InstanceName>
<InstanceStatus>Ready</InstanceStatus>
</RoleInstance>
</RoleInstanceList>
<UpgradeDomainCount>1</UpgradeDomainCount>
<RoleList>
<Role>
<RoleName>UpdateItems</RoleName>
<OsVersion>WA-GUEST-OS-1.22_201302-02</OsVersion>
</Role>
</RoleList>
</Deployment>
내가 테스트하고 현재 실행중인 코드는 다음과 같은 ID가 있는지 확인하기 위해 노력하고있어 :
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(
new Uri("https://management.core.windows.net/" + subscriptionId + "/services/hostedservices/<<servicename>>/deploymentslots/production?embed-detail=true"));
이 같은 응답을 얻을 응답. 나는 비교하면 :
xml["Deployment"]["Name"].InnerText;
이 일치하지
RoleEnvironment.CurrentRoleInstance.Role.Instances[0].Id;
합니다. C#의 항목과 API에서 반환 된 ID를 어떻게 일치시킬 수 있습니까? 감사합니다.
고맙습니다. 이고르. 서비스 API를 통해 인스턴스의 ID를 얻을 수 있습니까? XML 위의 "PrivateID"또는 "Name"또는 "Label"입니까? – kevin
RoleInstanceList 요소의 RoleInstance 요소 아래에있는 InstanceName 속성입니다. – Igorek