为什么我的IIS日志被复制了我的Azure的Web角色?(Why aren't my IIS

2019-08-17 19:28发布

这是一个跟进这个问题 。 我用Cerebrata诊断管理器远程诊断,试图打开IIS日志。 我没有上部署它。 它似乎工作和一些文件被复制。 然后,它似乎从来没有再工作。 我再次调整了设置。 我试图删除IIS相关的blob和表存储条目,看看是否会得到它的开始。 下面是配置的样子在WAD控制容器显示,似乎基于Cerebrata工具进行更新。

<?xml version="1.0"?>
<ConfigRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <OnDemandTransfers />
  <DataSources>
    <OverallQuotaInMB>4096</OverallQuotaInMB>
    <Logs>
      <BufferQuotaInMB>1024</BufferQuotaInMB>
      <ScheduledTransferPeriodInMinutes>1</ScheduledTransferPeriodInMinutes>
      <ScheduledTransferLogLevelFilter>Undefined</ScheduledTransferLogLevelFilter>
    </Logs>
    <DiagnosticInfrastructureLogs>
      <BufferQuotaInMB>0</BufferQuotaInMB>
      <ScheduledTransferPeriodInMinutes>0</ScheduledTransferPeriodInMinutes>
      <ScheduledTransferLogLevelFilter>Undefined</ScheduledTransferLogLevelFilter>
    </DiagnosticInfrastructureLogs>
    <PerformanceCounters>
      <BufferQuotaInMB>0</BufferQuotaInMB>
      <ScheduledTransferPeriodInMinutes>0</ScheduledTransferPeriodInMinutes>
      <Subscriptions />
    </PerformanceCounters>
    <WindowsEventLog>
      <BufferQuotaInMB>0</BufferQuotaInMB>
      <ScheduledTransferPeriodInMinutes>0</ScheduledTransferPeriodInMinutes>
      <Subscriptions />
      <ScheduledTransferLogLevelFilter>Undefined</ScheduledTransferLogLevelFilter>
    </WindowsEventLog>
    <Directories>
      <BufferQuotaInMB>0</BufferQuotaInMB>
      <ScheduledTransferPeriodInMinutes>1</ScheduledTransferPeriodInMinutes>
      <Subscriptions>
        <DirectoryConfiguration>
          <Path>C:\Resources\directory\8973cd09642f4dfeafe830612cc8c1fe.AllRole.DiagnosticStore\FailedReqLogFiles</Path>
          <Container>wad-iis-failedreqlogfiles</Container>
          <DirectoryQuotaInMB>1024</DirectoryQuotaInMB>
        </DirectoryConfiguration>
        <DirectoryConfiguration>
          <Path>C:\Resources\directory\8973cd09642f4dfeafe830612cc8c1fe.AllRole.DiagnosticStore\LogFiles</Path>
          <Container>wad-iis-logfiles</Container>
          <DirectoryQuotaInMB>1024</DirectoryQuotaInMB>
        </DirectoryConfiguration>
        <DirectoryConfiguration>
          <Path>C:\Resources\directory\8973cd09642f4dfeafe830612cc8c1fe.AllRole.DiagnosticStore\CrashDumps</Path>
          <Container>wad-crash-dumps</Container>
          <DirectoryQuotaInMB>1024</DirectoryQuotaInMB>
        </DirectoryConfiguration>
      </Subscriptions>
    </Directories>
  </DataSources>
  <IsDefault>false</IsDefault>
</ConfigRequest>

为什么它似乎不会工作任何想法?

UPDATE

今天我们重新部署具有以下diagnostics.wadcfg仍然没有IISLogs。 跟踪日志工作。 我们没有,因为这是我的理解是,文件可以处理所有调用诊断的任何代码。 我缺少的东西吗?

<DiagnosticMonitorConfiguration xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration"
      configurationChangePollInterval="PT1M"
      overallQuotaInMB="4096">
  <Logs bufferQuotaInMB="1024"
     scheduledTransferLogLevelFilter="Verbose"
     scheduledTransferPeriod="PT1M" />
  <Directories bufferQuotaInMB="1024"
   scheduledTransferPeriod="PT1M">

    <!-- These three elements specify the special directories 
           that are set up for the log types -->
    <CrashDumps container="wad-crash-dumps" directoryQuotaInMB="256" />
    <FailedRequestLogs container="wad-frq" directoryQuotaInMB="256" />
    <IISLogs container="wad-iis" directoryQuotaInMB="256" />

  </Directories>
</DiagnosticMonitorConfiguration>

会不会是网络角色是XS情况下(因为我们只是测试现在)? 再次,它的工作一次,但现在似乎是死了。

Answer 1:

几点建议:

  1. 放下OverallQuotaInMB成类似4000

  2. 增加目录节点下BufferQuotaInMB到一个数字(例如1场演出)

  3. 放下其他单个目录配额,使他们在#2加起来的东西比BufferQuotaInMB略显不足,因此,所有的配额(包括整体目录和和个人文件夹是OverallQuotaInMB下)。 IE:原木 - 1GIG(这是跟踪数据),目录:1场演出,FailedRequests:256MB,IISLogs:256MB,CrashDumps:256MB

  4. 重新启动服务器(以防万一)

  5. 祝好运

当整体限额设置为Azure的分配用于诊断存储(4gig)最大空间基本上,我已经看到了诊断作用挑剔。 降低个别配额,使他们增加了一些低于总配额还可以帮助因为如果Azure诊断曾经填满了,有喘息的余地Azure中删除旧数据之前。

总体而言,建立Azure诊断是一个黑魔法艺术的东西。 我一直在帮助客户AzureWatch两年,现在做到这一点,我仍然觉得我与配额摸索。 希望他们只是让用户打开的事情或关闭对整个配置按照惯例与配置来驱动。 几乎没有人关心过的数据捕获到他们的虚拟机,而不是转移到Azure存储,因此小的配额是大多数情况下为广大乡亲的完全正常的数据传输到存储每隔几分钟。

HTH



文章来源: Why aren't my IIS Logs being copied for my Azure web role?