Esporre le impostazioni di configurazione del ruolo come una variabile di ambiente con XPath
Importante
Servizi cloud (versione classica) è ora deprecato per tutti i clienti a partire dal 1° settembre 2024. Tutte le distribuzioni in esecuzione esistenti verranno arrestate e arrestate da Microsoft e i dati andranno persi definitivamente a partire da ottobre 2024. 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.