3 instantiations of OtlpLogEntry
Aspire.Dashboard (1)
Otlp\Storage\TelemetryRepository.cs (1)
349
var logEntry = new
OtlpLogEntry
(record, resourceView, scope, _otlpContext);
Aspire.Dashboard.Components.Tests (1)
Controls\StructuredLogDetailsTests.cs (1)
35
LogEntry = new
OtlpLogEntry
(
Aspire.Dashboard.Tests (1)
Model\SpanWaterfallViewModelTests.cs (1)
60
var log = new
OtlpLogEntry
(TelemetryTestHelpers.CreateLogRecord(traceId: trace.TraceId, spanId: "1"), app1View, scope, context);
129 references to OtlpLogEntry
Aspire.Dashboard (123)
Components\Controls\PropertyValues\LogLevelValue.razor.cs (1)
18
public required
OtlpLogEntry
LogEntry { get; set; }
Components\Controls\StructuredLogActions.razor.cs (1)
51
public required
OtlpLogEntry
LogEntry { get; set; }
Components\Pages\StructuredLogs.razor.cs (10)
50
private FluentDataGrid<
OtlpLogEntry
>? _dataGrid;
132
private async ValueTask<GridItemsProviderResult<
OtlpLogEntry
>> GetData(GridItemsProviderRequest<
OtlpLogEntry
> request)
263
var
logEntryId = TelemetryRepository.GetLog(LogEntryId.Value);
310
private async Task OnShowPropertiesAsync(
OtlpLogEntry
entry, string? buttonId)
420
private string GetRowClass(
OtlpLogEntry
entry)
447
if (_dataGrid != null && FluentDataGridHelper<
OtlpLogEntry
>.TrySetMaxItemCount(_dataGrid, 10_000))
544
private bool IsGenAILogEntry(
OtlpLogEntry
logEntry)
560
private async Task LaunchGenAIVisualizerAsync(
OtlpLogEntry
logEntry)
610
foreach (
var
l in logs.Items.DistinctBy(l => (l.SpanId, l.TraceId)))
Components\Pages\TraceDetail.razor.cs (1)
530
private async Task ToggleSpanLogsAsync(
OtlpLogEntry
logEntry)
Components\ResourcesGridColumns\LogMessageColumnDisplay.razor.cs (4)
12
public required
OtlpLogEntry
LogEntry { get; set; }
18
public required EventCallback<
OtlpLogEntry
> LaunchGenAIVisualizerCallback { get; set; }
21
public required Func<
OtlpLogEntry
, bool> IsGenAILogCallback { get; set; }
27
_exceptionText =
OtlpLogEntry
.GetExceptionText(LogEntry);
Components_Pages_StructuredLogs_razor.g.cs (36)
1131
OtlpLogEntry
1137
__builder4.AddComponentParameter(117, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1154
__builder4.AddComponentParameter(118, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1171
__builder4.AddComponentParameter(119, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1188
__builder4.AddComponentParameter(120, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1205
__builder4.AddComponentParameter(121, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1222
__builder4.AddComponentParameter(122, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1230
), (global::System.Func<
OtlpLogEntry
, global::System.String>)(
1239
__builder4.AddComponentParameter(123, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1256
__builder4.AddComponentParameter(124, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1273
__builder4.AddComponentParameter(125, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1290
__builder4.AddComponentParameter(126, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1307
__builder4.AddComponentParameter(127, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1324
__builder4.AddComponentParameter(128, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1332
), (global::Microsoft.FluentUI.AspNetCore.Components.GridItemsProvider<
OtlpLogEntry
>)(
1341
__builder4.AddComponentParameter(129, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1358
__builder4.AddComponentParameter(130, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1375
__builder4.AddComponentParameter(131, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1383
), (global::System.Func<
OtlpLogEntry
, global::System.Object>)(
1392
__builder4.AddComponentParameter(132, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1400
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Microsoft.AspNetCore.Components.EventCallback<global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGridRow<
OtlpLogEntry
>>>(global::Microsoft.AspNetCore.Components.EventCallback.Factory.Create<global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGridRow<
OtlpLogEntry
>>(this,
1409
__builder4.AddComponentParameter(133, nameof(global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>.
1419
global::__Blazor.Aspire.Dashboard.Components.Pages.StructuredLogs.TypeInference.CreateAspireTemplateColumn_3(__builder5, 135, default(
OtlpLogEntry
)!, 136,
1483
global::__Blazor.Aspire.Dashboard.Components.Pages.StructuredLogs.TypeInference.CreateAspireTemplateColumn_4(__builder5, 147, default(
OtlpLogEntry
)!, 148,
1517
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Aspire.Dashboard.Otlp.Model.
OtlpLogEntry
>(
1530
global::__Blazor.Aspire.Dashboard.Components.Pages.StructuredLogs.TypeInference.CreateAspireTemplateColumn_5(__builder5, 155, default(
OtlpLogEntry
)!, 156,
1582
global::__Blazor.Aspire.Dashboard.Components.Pages.StructuredLogs.TypeInference.CreateAspireTemplateColumn_6(__builder5, 164, default(
OtlpLogEntry
)!, 165,
1633
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Aspire.Dashboard.Otlp.Model.
OtlpLogEntry
>(
1650
), (global::System.Func<global::Aspire.Dashboard.Otlp.Model.
OtlpLogEntry
, global::System.Boolean>)(
1667
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Microsoft.AspNetCore.Components.EventCallback<global::Aspire.Dashboard.Otlp.Model.
OtlpLogEntry
>>(global::Microsoft.AspNetCore.Components.EventCallback.Factory.Create<global::Aspire.Dashboard.Otlp.Model.
OtlpLogEntry
>(this,
1680
global::__Blazor.Aspire.Dashboard.Components.Pages.StructuredLogs.TypeInference.CreateAspireTemplateColumn_7(__builder5, 175, default(
OtlpLogEntry
)!, 176,
1774
global::__Blazor.Aspire.Dashboard.Components.Pages.StructuredLogs.TypeInference.CreateAspireTemplateColumn_8(__builder5, 188, default(
OtlpLogEntry
)!, 189,
1838
), global::Microsoft.AspNetCore.Components.CompilerServices.RuntimeHelpers.TypeCheck<global::Aspire.Dashboard.Otlp.Model.
OtlpLogEntry
>(
1900
= (global::Microsoft.FluentUI.AspNetCore.Components.FluentDataGrid<
OtlpLogEntry
>)__value;
Components_ResourcesGridColumns_LogLevelColumnDisplay_razor.g.cs (1)
329
public required
OtlpLogEntry
LogEntry { get; set; }
Model\Assistant\AIHelpers.cs (7)
313
public static (string json, string limitMessage) GetStructuredLogsJson(List<
OtlpLogEntry
> errorLogs, DashboardOptions options, bool includeDashboardUrl = false, Func<OtlpResource, string>? getResourceName = null)
327
internal static string GetStructuredLogJson(
OtlpLogEntry
l, DashboardOptions options, bool includeDashboardUrl = false, Func<OtlpResource, string>? getResourceName = null)
335
public static object GetLogEntryDto(
OtlpLogEntry
l, PromptContext context, DashboardOptions options, bool includeDashboardUrl = false, Func<OtlpResource, string>? getResourceName = null)
337
var exceptionText =
OtlpLogEntry
.GetExceptionText(l);
348
.Where(l => l.Key is not (
OtlpLogEntry
.ExceptionStackTraceField or
OtlpLogEntry
.ExceptionMessageField or
OtlpLogEntry
.ExceptionTypeField))
Model\Assistant\AssistantChatDataContext.cs (3)
29
private readonly ConcurrentDictionary<long,
OtlpLogEntry
> _referencedLogs = new();
340
public void AddReferencedLogEntry(
OtlpLogEntry
logEntry)
345
public bool TryGetLog(long internalId, [NotNullWhen(true)] out
OtlpLogEntry
? logEntry)
Model\Assistant\Markdown\AspireEnrichmentParser.cs (1)
183
if (_options.DataContext.TryGetLog(result, out
var
logEntry))
Model\Assistant\Markdown\LogEntryInline.cs (1)
11
public required
OtlpLogEntry
LogEntry { get; init; }
Model\Assistant\Prompts\IceBreakersBuilder.cs (5)
136
public void StructuredLogs(BuildIceBreakersContext context, Func<PagedResult<
OtlpLogEntry
>> getCurrentLogs, bool hasErrors, Func<PagedResult<
OtlpLogEntry
>> getErrorLogs)
168
public void StructuredLogs(BuildIceBreakersContext context, OtlpResource resource, Func<PagedResult<
OtlpLogEntry
>> getCurrentLogs, bool hasErrors, Func<PagedResult<
OtlpLogEntry
>> getErrorLogs)
200
public void StructuredLogs(BuildIceBreakersContext context,
OtlpLogEntry
logEntry)
Model\Assistant\Prompts\KnownChatMessages.cs (4)
179
public static ChatMessage CreateErrorStructuredLogsMessage(List<
OtlpLogEntry
> errorLogs, DashboardOptions options)
197
public static ChatMessage CreateAnalyzeLogEntryMessage(
OtlpLogEntry
logEntry, DashboardOptions options)
283
public static ChatMessage CreateAnalyzeTraceMessage(OtlpTrace trace, List<
OtlpLogEntry
> traceLogEntries, IEnumerable<IOutgoingPeerResolver> outgoingPeerResolvers, DashboardOptions options)
306
public static ChatMessage CreateAnalyzeSpanMessage(OtlpSpan span, List<
OtlpLogEntry
> traceLogEntries, IEnumerable<IOutgoingPeerResolver> outgoingPeerResolvers, DashboardOptions options)
Model\Assistant\Prompts\PromptContextsBuilder.cs (5)
28
public static Task ErrorStructuredLogs(InitializePromptContext promptContext, string displayText, Func<PagedResult<
OtlpLogEntry
>> getErrorLogs)
31
foreach (
var
log in errorLogs.Items)
52
public static Task AnalyzeLogEntry(InitializePromptContext promptContext, string displayText,
OtlpLogEntry
logEntry)
75
foreach (
var
log in traceLogs.Items)
100
foreach (
var
log in traceLogs.Items)
Model\GenAI\GenAIVisualizerDialogViewModel.cs (2)
615
private static List<
OtlpLogEntry
> GetSpanLogEntries(TelemetryRepository telemetryRepository, OtlpSpan span)
641
foreach (
var
logEntry in logEntries)
Model\Otlp\SpanLogEntryViewModel.cs (1)
13
public required
OtlpLogEntry
LogEntry { get; init; }
Model\Otlp\SpanWaterfallViewModel.cs (3)
128
public static List<SpanWaterfallViewModel> Create(OtlpTrace trace, List<
OtlpLogEntry
> logs, TraceDetailState state)
147
static SpanWaterfallViewModel CreateViewModel(OtlpSpan span, int depth, bool hidden, TraceDetailState state, List<
OtlpLogEntry
>? spanLogs, ref int currentSpanLogIndex)
168
foreach (
var
log in spanLogs)
Model\Otlp\TelemetryFilter.cs (8)
18
public abstract IEnumerable<
OtlpLogEntry
> Apply(IEnumerable<
OtlpLogEntry
> input);
112
public override IEnumerable<
OtlpLogEntry
> Apply(IEnumerable<
OtlpLogEntry
> input)
116
case nameof(
OtlpLogEntry
.TimeStamp):
122
case nameof(
OtlpLogEntry
.Severity):
131
case nameof(
OtlpLogEntry
.Message):
139
return input.Where(x => func(
OtlpLogEntry
.GetFieldValue(x, Field) ?? string.Empty, Value));
Model\SpanType.cs (6)
89
public override IEnumerable<
OtlpLogEntry
> Apply(IEnumerable<
OtlpLogEntry
> input)
122
public override IEnumerable<
OtlpLogEntry
> Apply(IEnumerable<
OtlpLogEntry
> input)
155
public override IEnumerable<
OtlpLogEntry
> Apply(IEnumerable<
OtlpLogEntry
> input)
Model\StructuredLogsViewModel.cs (7)
19
private PagedResult<
OtlpLogEntry
>? _logs;
109
public PagedResult<
OtlpLogEntry
> GetLogs()
135
filters.Add(new FieldTelemetryFilter { Field = nameof(
OtlpLogEntry
.Message), Condition = FilterCondition.Contains, Value = FilterText });
140
filters.Add(new FieldTelemetryFilter { Field = nameof(
OtlpLogEntry
.Severity), Condition = FilterCondition.GreaterThanOrEqual, Value = _logLevel.Value.ToString() });
149
public PagedResult<
OtlpLogEntry
> GetErrorLogs(int count)
152
filters.RemoveAll(f => f is FieldTelemetryFilter fieldFilter && fieldFilter.Field == nameof(
OtlpLogEntry
.Severity));
153
filters.Add(new FieldTelemetryFilter { Field = nameof(
OtlpLogEntry
.Severity), Condition = FilterCondition.GreaterThanOrEqual, Value = Microsoft.Extensions.Logging.LogLevel.Error.ToString() });
Model\StructureLogsDetailsViewModel.cs (2)
11
public required
OtlpLogEntry
LogEntry { get; init; }
13
public static string GetEventName(
OtlpLogEntry
logEntry, IStringLocalizer<Dashboard.Resources.StructuredLogs> loc)
Model\TelemetryExportService.cs (2)
167
internal static OtlpLogsDataJson ConvertLogsToOtlpJson(OtlpResource resource, IReadOnlyList<
OtlpLogEntry
> logs)
191
private static OtlpLogRecordJson ConvertLogEntry(
OtlpLogEntry
log)
Otlp\Model\OtlpHelpers.cs (1)
513
public static string? GetEventName(
OtlpLogEntry
logEntry)
Otlp\Model\OtlpLogEntry.cs (3)
125
public static string? GetFieldValue(
OtlpLogEntry
log, string field)
144
public static string? GetExceptionText(
OtlpLogEntry
logEntry)
165
static string? GetProperty(
OtlpLogEntry
logEntry, string propertyName)
Otlp\Storage\TelemetryRepository.cs (8)
44
private readonly CircularBuffer<
OtlpLogEntry
> _logs;
349
var
logEntry = new OtlpLogEntry(record, resourceView, scope, _otlpContext);
401
public PagedResult<
OtlpLogEntry
> GetLogs(GetLogsContext context)
410
return PagedResult<
OtlpLogEntry
>.Empty;
437
public
OtlpLogEntry
? GetLog(long logId)
443
foreach (
var
logEntry in _logs)
771
foreach (
var
log in _logs)
773
var value =
OtlpLogEntry
.GetFieldValue(log, attributeName);
Aspire.Dashboard.Tests (6)
Integration\OtlpHttpJsonTests.cs (2)
501
var
log = logs.Items.First();
578
var
log = logs.Items.First();
Model\SpanWaterfallViewModelTests.cs (1)
60
var
log = new OtlpLogEntry(TelemetryTestHelpers.CreateLogRecord(traceId: trace.TraceId, spanId: "1"), app1View, scope, context);
TelemetryRepositoryTests\LogTests.cs (3)
813
Filters = [new FieldTelemetryFilter { Condition = FilterCondition.Contains, Field = nameof(
OtlpLogEntry
.Message), Value = "does_not_contain" }]
821
Filters = [new FieldTelemetryFilter { Condition = FilterCondition.Contains, Field = nameof(
OtlpLogEntry
.Message), Value = "message" }]
1260
var
log = Assert.Single(logs.Items);