Exponera rollkonfigurationsinställningar som en miljövariabel med XPath

Viktigt

Cloud Services (klassisk) är nu inaktuell för nya kunder och kommer att dras tillbaka den 31 augusti 2024 för alla kunder. Nya distributioner bör använda den nya Azure Resource Manager-baserade distributionsmodellen Azure Cloud Services (utökad support).

I definitionsfilen för molntjänstarbetaren eller webbrolltjänsten kan du exponera körningskonfigurationsvärden som miljövariabler. Följande XPath-värden stöds (som motsvarar API-värden).

Dessa XPath-värden är också tillgängliga via biblioteket Microsoft.WindowsAzure.ServiceRuntime .

App som körs i emulatorn

Anger att appen körs i emulatorn.

Typ Exempel
Xpath xpath="/RoleEnvironment/Deployment/@emulated"
Kod var x = RoleEnvironment.IsEmulated;

Distributions-ID

Hämtar distributions-ID:t för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/Deployment/@id"
Kod var deploymentId = RoleEnvironment.DeploymentId;

Roll-ID

Hämtar det aktuella roll-ID:t för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/@id"
Kod var id = RoleEnvironment.CurrentRoleInstance.Id;

Uppdatera domän

Hämtar instansens uppdateringsdomän.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/@updateDomain"
Kod var ud = RoleEnvironment.CurrentRoleInstance.UpdateDomain;

Feldomän

Hämtar feldomänen för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/@faultDomain"
Kod var fd = RoleEnvironment.CurrentRoleInstance.FaultDomain;

Rollnamn

Hämtar rollnamnet för instanserna.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/@roleName"
Kod var rname = RoleEnvironment.CurrentRoleInstance.Role.Name;

Konfigurationsinställning

Hämtar värdet för den angivna konfigurationsinställningen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/ConfigurationSettings/ConfigurationSetting[@name='Setting1']/@value"
Kod var setting = RoleEnvironment.GetConfigurationSettingValue("Setting1");

Lokal lagringssökväg

Hämtar den lokala lagringssökvägen för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='LocalStore1']/@path"
Kod var localResourcePath = RoleEnvironment.GetLocalResource("LocalStore1"). RootPath;

Lokal lagringsstorlek

Hämtar storleken på den lokala lagringen för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='LocalStore1']/@sizeInMB"
Kod var localResourceSizeInMB = RoleEnvironment.GetLocalResource("LocalStore1"). MaximumSizeInMegabytes;

Slutpunktsprotokoll

Hämtar slutpunktsprotokollet för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@protocol"
Kod var prot = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]. Protokollet;

Slutpunkts-IP

Hämtar den angivna slutpunktens IP-adress.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@address"
Kod var address = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]. IPEndpoint.Address

Slutpunktsport

Hämtar slutpunktsporten för instansen.

Typ Exempel
Xpath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@port"
Kod var port = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]. IPEndpoint.Port;

Exempel

Här är ett exempel på en arbetsroll som skapar en startaktivitet med en miljövariabel med namnet TestIsEmulated inställd på värdet @emulated xpath.

<WorkerRole name="Role1">
    <ConfigurationSettings>
      <Setting name="Setting1" />
    </ConfigurationSettings>
    <LocalResources>
      <LocalStorage name="LocalStore1" sizeInMB="1024"/>
    </LocalResources>
    <Endpoints>
      <InternalEndpoint name="Endpoint1" protocol="tcp" />
    </Endpoints>
    <Startup>
      <Task commandLine="example.cmd inputParm">
        <Environment>
          <Variable name="TestConstant" value="Constant"/>
          <Variable name="TestEmptyValue" value=""/>
          <Variable name="TestIsEmulated">
            <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated"/>
          </Variable>
          ...
        </Environment>
      </Task>
    </Startup>
    <Runtime>
      <Environment>
        <Variable name="TestConstant" value="Constant"/>
        <Variable name="TestEmptyValue" value=""/>
        <Variable name="TestIsEmulated">
          <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated"/>
        </Variable>
        ...
      </Environment>
    </Runtime>
    ...
</WorkerRole>

Nästa steg

Läs mer om filen ServiceConfiguration.cscfg .

Skapa ett ServicePackage.cspkg-paket .

Aktivera fjärrskrivbord för en roll.