private RequestTelemetry GenerateRequest()

in src/Library/TelemetryGenerator.cs [384:433]


        private RequestTelemetry GenerateRequest(string spanName, string requestId, string parentRequestId,
            long spanStatusCode, string spanStatusMessage, DateTimeOffset? startTime, DateTimeOffset? endTime, string roleName, string roleInstance,
            string httpUrl, string httpHost, string httpStatusCode, string httpPath, string httpMethod, long httpPort, string httpScheme, string httpUserAgent, string httpRoute, string requestHeadersRequestContextAppId,
            string requestHeadersSyntheticTestRunId, string requestHeadersSyntheticTestLocation, bool propagateSyntheticContext, Dictionary<string, string> debugData)
        {
            RequestTelemetry request = new RequestTelemetry();
            
            InitializeOperationTelemetry(request, spanName, requestId, parentRequestId, spanStatusCode, spanStatusMessage, startTime, endTime, roleName, roleInstance);
            // SetTracestate(span.Tracestate, request);

            request.ResponseCode = spanStatusCode.ToString();

            request.ResponseCode = httpStatusCode;
            request.Context.User.UserAgent = httpUserAgent;

            foreach (var pair in debugData)
            {
                request.Properties.Add(pair);
            }

            if (httpUrl != null && Uri.TryCreate(httpUrl, UriKind.RelativeOrAbsolute, out var requestUrl))
            {
                if (requestUrl.IsAbsoluteUri)
                {
                    request.Url = requestUrl;
                    request.Name = GetHttpTelemetryName(httpMethod, requestUrl.AbsolutePath, httpRoute);
                }
                else
                {
                    request.Name = GetHttpTelemetryName(httpMethod, requestUrl.OriginalString, httpRoute);
                }
            }
            else
            {
                request.Url = GetUrl(httpScheme, httpHost, httpPort, httpPath);
                request.Name = GetHttpTelemetryName(httpMethod, httpPath, httpRoute);
            }

            if (propagateSyntheticContext)
            {
                this.SetSyntheticContext(request, requestHeadersSyntheticTestRunId, requestHeadersSyntheticTestLocation);
            }

            if (!string.IsNullOrWhiteSpace(requestHeadersRequestContextAppId))
            {
                request.Source = Invariant($"{requestHeadersRequestContextAppId}");
            }

            return request;
        }