Можно ли получить доступ к журналам событий в Windows Azure для развертывания с несколькими экземплярами с использованием облачных служб Azure? При необходимости он сможет просматривать журналы событий каждого экземпляра сервера. «Черный ящик» просто не подходит.
Если вы включили удаленный рабочий стол, вы можете подключиться к каждому экземпляру и удаленно проверять журнал событий.
С другой стороны, вы можете настроить службу диагностики Azure для копирования Журнал событий в учетную запись хранилища BLOB-объектов Azure периодически.
Включение диагностики Azure в .csdef
<WebRole name="roleName">
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
Настройте учетную запись диагностики в .cscfg (обязательно используйте https для DefaultEndpointsProtocol).
<Role name="roleName">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=accountName;AccountKey=accountKey" />
</ConfigurationSettings>
</Role>
Добавьте диагностическую инициализацию в метод OnStart.
var config = DiagnosticMonitor.GetDefaultInitialConfiguration();
config.WindowsEventLog.DataSources.Add("System!*");
DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", config);
Видеть http://msdn.microsoft.com/en-us/library/windowsazure/microsoft.windowsazure.diagnostics.diagnosticmonitorconfiguration.aspx для подробностей.