与ApplicationInsights TelemetryInitializer共享会话

时间:2019-06-27 13:41:28

标签: .net asp.net-mvc azure-application-insights telemetry

我试图与天蓝色遥测共享Session。

我已经安装了nuget包Microsoft.ApplicationInsights.Web。 我尝试从Myelenetizer类的应用会话中获取会话键值,该类继承自ITelemetryInitializer。

MyInitializer初始化方法

CREATE TABLE users(
    user_id INTEGER,
    user_name VARCHAR(250),
    age INTEGER,
    CONSTRAINT pk_user PRIMARY KEY (user_id)
);

CREATE TABLE movies(
    movie_id INTEGER,
    movie_name VARCHAR(250),
    genre VARCHAR(250),
    CONSTRAINT pk_movie PRIMARY KEY (movie_id)
);

CREATE TABLE ratings(   
    user_id INTEGER,
    movie_id INTEGER,
    rating FLOAT,
    timestamp TIMESTAMP,
    CONSTRAINT pk_rating PRIMARY KEY (user_id, movie_id)
);

在我的App_Start.NinjectWebCommon

var ctx = HttpContext.Current;
if (ctx != null)
{
    var tel = ctx.GetRequestTelemetry();       
    var companyId = tel.Context.Properties["MyKeyInAppSession"];
}

不幸的是,它总是抛出KeyNotFoundException(我在那儿有try catch块,但是这里没有包括它来简化)。有什么我想念的吗?

0 个答案:

没有答案