コード例 #1
0
 public virtual async Task <TrackingResult> OnTrackingUserTiming(HttpActionContext filterContext)
 {
     return
         (await
          Tracker.TrackUserTimingAsync(filterContext.Request, BuildCurrentActionName(filterContext),
                                       BuildCurrentActionUrl(filterContext), Category, Var, TotalMilliseconds, Label));
 }
コード例 #2
0
        public static async Task <TrackingResult> TrackUserTimingAsync(this Tracker tracker, HttpRequestMessage httpRequest, string pageTitle, string pageUrl, string category, string var, long value, string label = null)
        {
            var userTimingParameters = new UserTimings
            {
                DocumentTitle       = pageTitle,
                DocumentLocationUrl = pageUrl,
                UserAgent           = httpRequest.Headers.UserAgent.ToString(),
                DocumentHostName    = httpRequest.RequestUri.Host,
                UserLanguage        = httpRequest.Headers.AcceptLanguage.ToString().ToLower(),
                ReferralUrl         = httpRequest.Headers.Referrer != null?httpRequest.Headers.Referrer.ToString() : null,
                                          UserTimingCategory = category,
                                          UserTimingVariable = var,
                                          UserTimingTime     = value,
                                          UserTimingLabel    = label,
                                          CacheBuster        = tracker.AnalyticsSession.GenerateCacheBuster()
            };

            return(await tracker.TrackUserTimingAsync(userTimingParameters));
        }