部署在 Azure 上时,应用程序洞察中没有数据

托尼

我有一个 .net core 2 MVC Web 应用程序,它使用 Azure 上的应用程序洞察。我还配置了 nlog 以跟踪应用程序洞察。一切都在我的电脑上运行,因为我在 azure 上发现了异常和跟踪,但是当我部署应用程序并在 azure 上使用它时,它不会生成任何关于应用程序洞察的事件(我只在日志文件中找到了事件)。

所以我尝试在控制器中创建 TelemetryClient 的实例,它甚至可以在部署的实例中工作

TelemetryClient tc = new TelemetryClient()
{
    InstrumentationKey = "11111111-2222-3333-4444-555555555555"
};
tc.Context.User.Id = Environment.MachineName;
tc.Context.Session.Id = "session_id";
tc.Context.Device.OperatingSystem = Environment.OSVersion.ToString();
tc.TrackTrace("Privacy page says hello with TelemetryClient");

以下是我的项目的片段:

appsettings.json

{
  "ApplicationInsights": {
    "InstrumentationKey": "11111111-2222-3333-4444-555555555555"
  }
}

appsettings.Staging.json

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=tcp:dom.database.windows.net,1433;Initial Catalog=dom;Persist Security Info=False;User ID=user;Password=pass;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
  },

  "AllowedHosts": "*",

  "Logging": {
    "LogLevel": {
      "Default": "Trace",
      "System": "Information",
      "Microsoft": "Information"
    }
  }
}

我在 VS 和 Azure(暂存)上定义了相同的 ASPNETCORE_ENVIRONMENT 值,以确保加载相同的应用设置并部署所有文件。

我以这种方式加载配置

var configuration = new ConfigurationBuilder()
    .AddJsonFile("appsettings.json")
    .AddJsonFile($"appsettings.{environmentName}.json", optional: true)
    .AddEnvironmentVariables()              
    .Build();

CreateWebHostBuilder 是这个

public static IWebHostBuilder CreateWebHostBuilder(string[] args, IConfiguration config) =>
    WebHost.CreateDefaultBuilder(args)
        .ConfigureAppConfiguration((hostingContext) =>
        {
            //config.AddJsonFile("appsettings.json");
        })
        .UseStartup<Startup>()
        .ConfigureLogging(
            logging =>
            {
                logging.ClearProviders();
                logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
            })
        .UseApplicationInsights() // Enable Application Insights
        .UseNLog();

nlog.config 包含

  <extensions>
    <add assembly="Microsoft.ApplicationInsights.NLogTarget" />
  </extensions>
  <targets>
    <target type="ApplicationInsightsTarget" name="aiTarget" />
    <target xsi:type="File" name="f" fileName="${basedir}/logs/${shortdate}.log"
        layout="${longdate} ${uppercase:${level}} ${message}" />
  </targets>
  <rules>
    <logger name="*" minlevel="Warn" writeTo="aiTarget" />
    <logger name="*" minlevel="Warn" writeTo="f" />
  </rules>

在我看来,配置或 InstrumentationKey 有问题,但我不知道如何检查它。

任何想法,或者...有什么方法可以知道应用程序洞察库是如何配置的,以便找到一些有用的信息来解决问题?我尝试了远程调试,但我不知道检查什么。

伊万杨 |

根据您的描述,我认为您在 azure 门户 -> 您的 Web 应用程序 -> 配置 -> 应用程序设置中设置了另一个应用程序洞察键。

请检查您是否这样做:

在此处输入图片说明

如果钥匙在那里,您需要将其取下。或者将这行代码放在AddEnvironmentVariables()之前AddJsonFile(),如下所示:

var configuration = new ConfigurationBuilder()
    .AddEnvironmentVariables() //put this before AddJsonFile()
    .AddJsonFile("appsettings.json")
    .AddJsonFile($"appsettings.{environmentName}.json", optional: true)                 
    .Build();

如果您有更多问题,请告诉我。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

应用程序见解自部署到Azure Web应用以来没有数据

来自分类Dev

cakePHP在Azure上的部署

来自分类Dev

将应用程序部署到Azure

来自分类Dev

在Azure上部署角度应用程序

来自分类Dev

将应用程序部署到Azure

来自分类Dev

Azure功能应用程序:部署时不会触发TimerTrigger

来自分类Dev

Azure逻辑应用程序在不同环境中的部署

来自分类Dev

Azure逻辑应用程序在不同环境中的部署

来自分类Dev

Azure:Azure应用程序服务的部署插槽的定价

来自分类Dev

在没有 Github 的情况下在 Microsoft Azure 上部署 node js 应用程序

来自分类Dev

Bower在Azure部署上失败

来自分类Dev

Bower在Azure部署上失败

来自分类Dev

带有Git子模块的VSTS应用程序的连续部署在Azure上失败

来自分类Dev

通过GitHub部署时Express 4应用程序无法在Azure中运行

来自分类Dev

没有WinRM的Azure DevOps IIS部署

来自分类Dev

如何从 Azure 应用程序洞察中删除数据

来自分类Dev

Azure 上的私有代理部署

来自分类Dev

无法将Spring Boot应用程序部署到Azure

来自分类Dev

将Angular 2应用程序部署到Azure

来自分类Dev

将laravel应用程序部署到Azure

来自分类Dev

在Azure中部署aangular 8和springboot应用程序

来自分类Dev

在Azure中部署MVC5应用程序

来自分类Dev

从Blob下载应用程序部署Azure云服务

来自分类Dev

将 Angular 2 应用程序部署到 Azure

来自分类Dev

从 VS Code 将 NodeJS 应用程序部署到 Azure

来自分类Dev

Azure .Net Core Web 应用程序的部署变量

来自分类Dev

Nuke.Azure 部署 Web 应用程序

来自分类Dev

Azure Devops 发布管道“部署 BizTalk 应用程序”任务

来自分类Dev

在部署时触发 Azure 中的 webhook?

Related 相关文章

热门标签

归档