Pregunta

Tengo un problema el despliegue de una (servicio WCF) WebRole a Azure . Mi WebRole sigue mostrando buzy durante al menos 30 minutos, hasta que abortarlo. Despliego a través de Visual Studio 2010. Estoy buscando algo de información de rastreo y hay algunos blogs que me han hecho mención de tablas de almacenamiento llamados WADInfrastructureLogsTable y WADLogsTable.

He fijado los valores de configuración relacionados con la cuenta de almacenamiento de la siguiente manera:

 <ConfigurationSettings>
  <Setting name="DiagnosticsConnectionString"
    value="DefaultEndpointsProtocol=https;AccountName=sandsofttestservice;AccountKey=HgPjkzx+mjqgoDTO8SBNB3B4hdARuibWTOHrXg4BpxRKJfRZ/s4abVIoD5lOIW0LkoD0CoMb0i0GiTXA483MDQ==" />
</ConfigurationSettings>

No tengo mesas en todo en mi cuenta de almacenamiento. Ni siquiera después de haber desplegado Hello World Aplicaciones éxito. Mi contenedor Blob posee una vsdeploy- y un fajo de control de contenedor, y tengo 4 colas.

¿Cómo se pueden crear estas tablas?

    public override bool OnStart()
    {
        var dm = DiagnosticMonitor.GetDefaultInitialConfiguration();
        dm.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(5);
        dm.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
        DiagnosticMonitor.Start("DiagnosticsConnectionString", dm);

        Trace.WriteLine("OnStart");
        // For information on handling configuration changes
        // see the MSDN topic at http://go.microsoft.com/fwlink/?LinkId=166357.
        RoleEnvironment.Changing += RoleEnvironmentChanging;

        return base.OnStart();
    }
¿Fue útil?

Solución

He tenido un problema similar. Tuve la 'transferencia' de tiempo establecido a 1 minuto y no iba a transferir. Sin embargo, después he actualizado a 5 minutos, empecé a ver los mensajes de rastreo en el WADLogsTable. No sé por qué eso hizo una diferencia y no han encontrado ningún documento que habla de un período mínimo de transferencia, pero 5 minutos trabajaron para mí.

También asegúrese de que tiene Trace.Writeline apropiado () declaraciones en su / papel trabajador web.

Otros consejos

¿Usted ha establecido un horario de transmisión para la tabla de registros? Es decir, todos los registros se almacenan en caché en cada caso, y hay que pedir explícitamente que los datos sean persistieron en almacenamiento de tablas en una base periódica. Aquí está un ejemplo trivial para WADLogsTable:

        var dm = DiagnosticMonitor.GetDefaultInitialConfiguration();
        dm.Logs.ScheduledTransferPeriod = TimeSpan.FromSeconds(5);
        dm.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
        DiagnosticMonitor.Start("DiagnosticsConnectionString", dm);

Una vez que esto está configurado, debería ver la tabla WADLogsTable aparece después de un tiempo.

Usted tendrá que configurar el periodo de transferencia y el filtro para cada uno de los otros tipos, así:

  • Registro de eventos
  • Diagnóstico registro de la infraestructura
  • Directorios
  • Los contadores de rendimiento

Soren - Si no lo ha hecho, probablemente debería regenerar su clave de acceso cuenta de almacenamiento. Que aparece en su puesto original con sus datos de configuración.

Otra opción para ayudar a diagnosticar su problema es Intellitrace. Si está utilizando Visual Studio 2010 Utimate, puede activar Intellitrace con su despliegue. Esto le permitirá descargar los archivos de registro IntelliTrace, y de las que se puede ver alguna información bastante detallada relativa al despliegue y puesta en marcha de su aplicación. Puede haber algunas excepciones u otros errores que se generan que podría estar causando el estado "ocupado" prolongada.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top