0

这是对这个问题的跟进。我使用 Cerebrata 诊断管理器远程诊断来尝试打开 IIS 日志。我没有部署它。它似乎有效,并且复制了一些文件。然后它似乎再也没有工作了。我再次调整了设置。我尝试删除与 iis 相关的 blob 和表存储条目,以查看是否可以重新开始。这是 wad-control-container 中配置的样子,表明它似乎是基于 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>

关于为什么它似乎不起作用的任何想法?

更新

我们今天使用以下 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>

会不会是 Web 角色是 XS 实例(因为我们现在只是在测试)?同样,它确实工作过一次,但现在似乎已经死了。

4

1 回答 1

3

几点建议:

  1. 将OverallQuotaInMB 降低到4000

  2. 将 Directories 节点下的 BufferQuotaInMB 增加到一个数字(比如 1 gig)

  3. 降低其他单独的目录配额,使它们加起来略低于 #2 中的 BufferQuotaInMB,并且所有配额(包括整个目录和单个文件夹都在OverallQuotaInMB 之下)。IE:日志 - 1gig(这是跟踪数据),目录:1 gig,FailedRequests:256mb,IISLogs:256mb,CrashDumps:256mb

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

  5. 祝你好运

基本上,当整体配额设置为 Azure 为诊断存储分配的最大空间 (4gig) 时,我已经看到诊断行为很挑剔。降低单个配额以使它们加起来小于总配额也有帮助,因为如果 Azure 诊断已满,在 Azure 删除旧数据之前还有喘息的空间。

总体而言,设置 Azure 诊断是一种黑魔法。两年来我一直在帮助 AzureWatch 客户做到这一点,但我仍然觉得我对配额感到摸不着头脑。希望他们只是让用户打开或关闭这个东西,让整个配置由约定与配置驱动。几乎没有人关心将数据捕获到他们的 VM 上,而不是将其传输到 Azure 存储,因此对于大多数情况来说,小配额是完全可以的,因为大多数人每隔几分钟就会将他们的数据传输到存储中。

高温高压

于 2013-03-21T02:32:52.490 回答