in src/ServiceProfiler.EventPipe.Otel/Azure.Monitor.OpenTelemetry.Profiler.Core/EventListeners/SampleCollector.cs [172:196]
private void HandleRequestStop(EventWrittenEventArgs eventData, string requestName, string activityIdPath, string requestId)
{
if (_sampleActivityBuffer.TryRemove(requestId, out SampleActivity? activity))
{
activity.OperationName = requestName;
activity.StopTimeUtc = eventData.TimeStamp;
activity.Duration = eventData.TimeStamp - activity.StartTimeUtc;
activity.StopActivityIdPath = activityIdPath;
AppendSampleActivity(activity);
}
else
{
string message = "There is no matched start activity found for this request id: {requestId}. This could happen for the first few activities.";
if (!_hasActivityReported)
{
_logger.LogInformation(message, requestId);
_hasActivityReported = true;
}
else if (_logger.IsEnabled(LogLevel.Debug))
{
_logger.LogDebug(message, requestId);
}
}
}