Exemplo n.º 1
0
        private void LogConnectionWaitList(ILogger logger,
                                           long?writeItemTimestamp)
        {
            using (logger.BeginScope("m_WaitList"))
            {
                foreach (var webRequestProxy in TargetObject.GetWaitListItems())
                {
                    if (writeItemTimestamp != null)
                    {
                        var stopwatchInfo = Context.GetStopwatchInfo();
                        if (stopwatchInfo == null)
                        {
                            return;
                        }

                        var startTimestamp = webRequestProxy.StartTimestamp;
//                        StopwatchInfo stopwatchInfo = null;
                        var sinceWriteItemRequest = TimeSpan.FromMilliseconds(
                            stopwatchInfo.GetElapsedMilliseconds(writeItemTimestamp.Value, startTimestamp));
//
//                        // TODO m_WaitList.Add(new WaitListItem(request, NetworkingPerfCounters.GetTimestamp()));
//
                        logger.LogInformation($"Time since write item request: {sinceWriteItemRequest}");
                    }

                    var httpWebRequestAnalyzer = new HttpWebRequestAnalyzer(Context, webRequestProxy);
                    httpWebRequestAnalyzer.Dump(logger);

//                    var uri = GetHttpWebRequestUriAsString(heap, webRequestObject);
//
////                    var startTimestamp = (long) objectType.GetFieldByName("m_StartTimestamp")
////                        .GetValue(elAddress);
////                    var startTime = TimeSpan.FromTicks(unchecked((long) (startTimestamp * 4.876196D)));
//
//                    logger.LogInformation($"{elAddress:X} {uri}");
//
//                    var requestHeaders = heap.GetHttpWebRequestHeaders(webRequestObject);
//                    LogHeaders(requestHeaders, logger);
                }
            }
        }