在 Azure 环境中对 OWIN 进行故障排除,尝试获取 OWIN 日志

Troubleshooting OWIN in azure environment, trying to get OWIN logs

我有一个用 C# 构建的 azure web 应用程序,并利用 OWIN 进行 google 和 facebook 身份验证。最近,我将 facebook 的 OWIN 从 3.0.1 升级到 3.1.0,但现在 google 身份验证似乎随机丢失了弹珠;它可以正常工作很长一段时间,但随后开始拒绝 "access_denied" 的所有人。重新启动可以修复它,但这显然不是长期修复。

我试图找到一种方法来获取有关 OWIN 的一些日志记录信息,以追踪问题并尝试识别任何触发器。我在 http://benfoster.io/blog/how-to-use-tracesource-with-azure-diagnostics 找到了说明并尝试执行它们,但我仍然没有看到任何日志。

我的配置是这样的:

  <system.diagnostics>
    <sharedListeners>
      <add name="AzureDriveTraceListener" type="Microsoft.WindowsAzure.WebSites.Diagnostics.AzureDriveTraceListener, Microsoft.WindowsAzure.WebSites.Diagnostics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    </sharedListeners>
    <sources>
      <source name="Microsoft.Owin" switchName="Microsoft.Owin" switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <add name="AzureDriveTraceListener" />
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="Microsoft.Owin" value="All" />
    </switches>
    <trace autoflush="true" indentsize="4" />
  </system.diagnostics>

我错过了什么吗?如有任何帮助,我们将不胜感激!

这可能是一件愚蠢的事情,但我看到您正在使用来自博客的相同 public 密钥。

公钥令牌=31bf3856ad364e35

也许这就是问题所在。除此之外,如果你是第一次做

https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-enable-diagnostic-log

如果您关注这个,我们会更容易提供帮助,因为除了 public 键外,您似乎都在关注 benfoster 博客所说的一切。