El nombre por defecto
Quienes revisen los logs de conexiones a la base de datos SQL o usan herramientas como New Relic para monitorear sus aplicaciones corriendo sobre Cloud Services seguramente habrán visto que la lista de servidores sobre los cuales está corriendo la aplicación tiene nombres como «RD000D3A107CFC» (este es el nombre del equipo dentro de la red) . Esto no nos ayuda mucho a identificar cuál de las instancias es la que realizó la conexión o tiene problemas, ya que en el listado de instancias que vemos en el Portal de administración, las instancias tienen el nombre del rol más un número de orden (ej.: CloudService.Web_IN_1).
¿Cómo podemos saber cuál es este nombre?
Tenemos dos alternativas:
- Acceder por escritorio remoto a la instancia, y verlo en las propiedades del sistema.
- Mediante código, con la función
Dns.GetHostName()
.
Asignando un nombre más descriptivo
Afortunadamente tenemos una alternativa: indicar cuál es el prefijo de nombre que queremos que se use al crear nuestras instancias. Lo único que deberemos hacer es indicar el parámetro vmName
para nuestro rol (Importante: debe tener 10 caracteres o menos).
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<ServiceConfiguration name="CloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="4" osVersion="*" schemaVersion="2014-06.2.4"> | |
<Role name="CloudService.Web" vmName="WebInst"> | |
<Instances count="2"/> | |
<ConfigurationSettings> | |
… | |
</ConfigurationSettings> | |
<Certificates> | |
… | |
</Certificates> | |
</Role> | |
</ServiceConfiguration> |
De esta manera, nuestras instacias tendrán como nombre WebInst0, WebInst1, y así sucesivamente.
Para conocer todos los parámetros para la configuración de un rol pueden ver: https://msdn.microsoft.com/es-es/library/azure/jj156212.aspx