Блок приложения Windows Azure Auto Scale не работает и не печатает сообщения журнала

Я реализовал блок приложения Windows Azure Auto Scale в консольном приложении, которое отслеживает счетчики производительности и добавляет экземпляры в веб-роль. Я также реализовал ведение журнала, но он не показывает журналы в консоли и не добавляет новые экземпляры в веб-роль на основе правил.

И это не дает мне никакой ошибки...

1 ответ

Не зная, как настроено приложение (в частности, содержание app.config и из файла расписания), лучшее обоснованное предположение, которое я могу сделать, это то, что ваш app.config отсутствует конфигурация в <system.diagnostics> включить запись сообщений из блока.

Короче говоря, в вашем app.config у вас должен быть раздел, подобный следующему (взятый из одного из моих примеров приложений):

<system.diagnostics>
  <trace autoflush="true" />
    <sources>
      <source name="Autoscaling General" switchName="SourceSwitch" switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <add name="FileLog"/>
          <remove name="Default" />
          <!-- Uncomment the below section to write to the Application Event Log -->
          <!--<add name="EventLog"/>-->
        </listeners>
      </source>
      <source name="Autoscaling Updates" switchName="SourceSwitch" switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <add name="FileLog"/>
          <remove name="Default" />
          <!-- Uncomment the below section to write to the Application Event Log -->
          <!--<add name="EventLog"/>-->
        </listeners>
      </source>
        <!-- This section defines the logging configuration for My.Application.Log -->
        <source name="DefaultSource" switchName="DefaultSwitch">
            <listeners>
                <add name="FileLog"/>
                <!-- Uncomment the below section to write to the Application Event Log -->
                <!--<add name="EventLog"/>-->
            </listeners>
        </source>
    </sources>
    <switches>
        <add name="DefaultSwitch" value="Information"/>
      <add name="SourceSwitch" value="Verbose, Information, Warning, Error, Critical"/>
    </switches>
    <sharedListeners>
        <add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" initializeData="FileLogWriter" location="ExecutableDirectory"/>

        <!-- Uncomment the below section and replace APPLICATION_NAME with the name of your application to write to the Application Event Log -->
        <!--<add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="APPLICATION_NAME"/> -->
    </sharedListeners>
</system.diagnostics>

Вы можете найти дополнительную информацию из MSDN.

В дополнение к его, я помню, что я должен был установить некоторые точки останова (на Autoscaler.Start если я правильно напомню), чтобы поймать некоторые ошибки конфигурации.

Другие вопросы по тегам