Esporre le impostazioni di configurazione del ruolo come una variabile di ambiente con XPath
Importante
Servizi cloud (versione classica) è ora deprecato per i nuovi clienti e verrà ritirato il 31 agosto 2024 per tutti i clienti. Le nuove distribuzioni devono usare il nuovo modello di distribuzione basato su Azure Resource Manager, Servizi cloud di Azure (supporto "Extended").
Nel file di definizione del servzio del ruolo di lavoro o del ruolo Web del servizio cloud è possibile esporre i valori di configurazione di runtime come variabili di ambiente. Sono supportati i valori XPath seguenti, che corrispondono ai valori di API.
Questi valori XPath sono disponibili anche tramite la libreria Microsoft.WindowsAzure.ServiceRuntime .
App in esecuzione nell'emulatore
Indica che l'app è in esecuzione nell'emulatore.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/Deployment/@emulated" |
Codice | var x = RoleEnvironment.IsEmulated; |
ID distribuzione
Recupera l'ID distribuzione per l'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/Deployment/@id" |
Codice | var deploymentId = RoleEnvironment.DeploymentId; |
ID ruolo
Recupera l'ID del ruolo corrente per l'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/@id" |
Codice | var id = RoleEnvironment.CurrentRoleInstance.Id; |
Aggiornamento dominio
Recupera il dominio di aggiornamento dell'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/@updateDomain" |
Codice | var ud = RoleEnvironment.CurrentRoleInstance.UpdateDomain; |
Dominio di errore
Recupera il dominio di errore dell'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/@faultDomain" |
Codice | var fd = RoleEnvironment.CurrentRoleInstance.FaultDomain; |
Nome ruolo
Recupera il nome del ruolo dell'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/@roleName" |
Codice | var rname = RoleEnvironment.CurrentRoleInstance.Role.Name; |
Impostazione di configurazione
Recupera il valore dell'impostazione di configurazione specificata.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/ConfigurationSettings/ConfigurationSetting[@name='Setting1']/@value" |
Codice | var setting = RoleEnvironment.GetConfigurationSettingValue("Setting1"); |
Percorso di archiviazione locale
Recupera il percorso di archiviazione locale per l'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='LocalStore1']/@path" |
Codice | var localResourcePath = RoleEnvironment.GetLocalResource("LocalStore1").RootPath; |
Dimensioni di archiviazione locale
Recupera le dimensioni di archiviazione locale per l'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='LocalStore1']/@sizeInMB" |
Codice | var localResourceSizeInMB = RoleEnvironment.GetLocalResource("LocalStore1").MaximumSizeInMegabytes; |
Protocollo di endpoint
Recupera il protocollo di endpoint per l'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@protocol" |
Codice | var prot = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].Protocol; |
IP dell'endpoint
Ottiene l'indirizzo IP dell'endpoint specificato.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@address" |
Codice | var address = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].IPEndpoint.Address |
Porta dell'endpoint
Recupera la porta dell'endpoint per l'istanza.
Type | Esempio |
---|---|
XPath | xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@port" |
Codice | var port = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].IPEndpoint.Port; |
Esempio
Ecco un esempio di un ruolo di lavoro che crea un'attività di avvio con una variabile di ambiente denominata TestIsEmulated
impostata sul valore di xpath @emulated.
<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>
Passaggi successivi
Altre informazioni sul file ServiceConfiguration.cscfg .
Creare un pacchetto ServicePackage.cspkg .
Abilitare Desktop remoto per un ruolo.