243 references to FilterCondition
Aspire.Dashboard (135)
Api\TelemetryApiService.cs (19)
101
Condition = hasError.Value ?
FilterCondition
.Equals :
FilterCondition
.NotEqual
186
Condition =
FilterCondition
.Contains
200
Condition =
FilterCondition
.GreaterThanOrEqual
298
Condition =
FilterCondition
.Contains
311
Condition =
FilterCondition
.GreaterThanOrEqual
494
/// Maps a <see cref="ComparisonOperator"/> to the corresponding <see cref="
FilterCondition
"/>,
497
private static
FilterCondition
ToFilterCondition(ComparisonOperator op, bool negated) => (op, negated) switch
499
(ComparisonOperator.Contains, false) =>
FilterCondition
.Contains,
500
(ComparisonOperator.Contains, true) =>
FilterCondition
.NotContains,
501
(ComparisonOperator.GreaterThan, false) =>
FilterCondition
.GreaterThan,
502
(ComparisonOperator.GreaterThan, true) =>
FilterCondition
.LessThanOrEqual,
503
(ComparisonOperator.GreaterThanOrEqual, false) =>
FilterCondition
.GreaterThanOrEqual,
504
(ComparisonOperator.GreaterThanOrEqual, true) =>
FilterCondition
.LessThan,
505
(ComparisonOperator.LessThan, false) =>
FilterCondition
.LessThan,
506
(ComparisonOperator.LessThan, true) =>
FilterCondition
.GreaterThanOrEqual,
507
(ComparisonOperator.LessThanOrEqual, false) =>
FilterCondition
.LessThanOrEqual,
508
(ComparisonOperator.LessThanOrEqual, true) =>
FilterCondition
.GreaterThan,
509
_ =>
FilterCondition
.Contains
Components\Controls\ApplicationSummary.razor.cs (6)
41
private static readonly List<TelemetryFilter> s_errorLogFilters = [new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Severity), Condition =
FilterCondition
.GreaterThanOrEqual, Value = nameof(LogLevel.Error) }];
42
private static readonly List<TelemetryFilter> s_warningLogFilters = [new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Severity), Condition =
FilterCondition
.Equals, Value = nameof(LogLevel.Warning) }];
43
private static readonly FieldTelemetryFilter s_failedTraceFilter = new() { Field = KnownTraceFields.StatusField, Condition =
FilterCondition
.Equals, Value = nameof(OtlpSpanStatusCode.Error) };
453
CreateLogTimeFilter(
FilterCondition
.GreaterThanOrEqual, windowStart),
454
CreateLogTimeFilter(
FilterCondition
.LessThan, windowEnd)
511
private static FieldTelemetryFilter CreateLogTimeFilter(
FilterCondition
condition, DateTime time) => new()
Components\Controls\ResourcePaneInsights.razor.cs (3)
68
new() { Field = KnownTraceFields.TimestampField, Condition =
FilterCondition
.GreaterThanOrEqual, Value = snapshot.WindowStart.ToString("O", CultureInfo.InvariantCulture) },
69
new() { Field = KnownTraceFields.TimestampField, Condition =
FilterCondition
.LessThan, Value = snapshot.WindowEnd.ToString("O", CultureInfo.InvariantCulture) }
73
filters.Add(new() { Field = KnownTraceFields.StatusField, Condition =
FilterCondition
.Equals, Value = nameof(OtlpSpanStatusCode.Error) });
Components\Dialogs\FilterDialog.razor.cs (27)
22
private List<SelectViewModel<
FilterCondition
>> _filterConditions = null!;
23
private List<SelectViewModel<
FilterCondition
>> _stringFilterConditions = null!;
24
private List<SelectViewModel<
FilterCondition
>> _numericFilterConditions = null!;
25
private List<SelectViewModel<
FilterCondition
>> _dateFilterConditions = null!;
27
private SelectViewModel<
FilterCondition
> CreateFilterSelectViewModel(
FilterCondition
condition) =>
28
new SelectViewModel<
FilterCondition
> { Id = condition, Name = FieldTelemetryFilter.ConditionToString(condition, FilterLoc) };
63
CreateFilterSelectViewModel(
FilterCondition
.Equals),
64
CreateFilterSelectViewModel(
FilterCondition
.Contains),
65
CreateFilterSelectViewModel(
FilterCondition
.NotEqual),
66
CreateFilterSelectViewModel(
FilterCondition
.NotContains)
71
CreateFilterSelectViewModel(
FilterCondition
.Equals),
72
CreateFilterSelectViewModel(
FilterCondition
.NotEqual),
73
CreateFilterSelectViewModel(
FilterCondition
.GreaterThanOrEqual),
74
CreateFilterSelectViewModel(
FilterCondition
.GreaterThan),
75
CreateFilterSelectViewModel(
FilterCondition
.LessThanOrEqual),
76
CreateFilterSelectViewModel(
FilterCondition
.LessThan)
81
CreateFilterSelectViewModel(
FilterCondition
.GreaterThanOrEqual),
82
CreateFilterSelectViewModel(
FilterCondition
.GreaterThan),
83
CreateFilterSelectViewModel(
FilterCondition
.LessThanOrEqual),
84
CreateFilterSelectViewModel(
FilterCondition
.LessThan),
85
CreateFilterSelectViewModel(
FilterCondition
.Equals),
86
CreateFilterSelectViewModel(
FilterCondition
.NotEqual)
179
private SelectViewModel<
FilterCondition
> GetDefaultCondition()
181
var
condition = (_formModel.ValueIsNumeric || _formModel.ValueIsDate) ?
FilterCondition
.GreaterThanOrEqual :
FilterCondition
.Contains;
Components\Legacy\Pages\StructuredLogs.razor.cs (2)
185
Field = KnownStructuredLogFields.TraceIdField, Condition =
FilterCondition
.Equals, Value = TraceId
192
Field = KnownStructuredLogFields.SpanIdField, Condition =
FilterCondition
.Equals, Value = SpanId
Components\Legacy\Pages\TraceDetail.razor.cs (1)
312
Condition =
FilterCondition
.Equals,
Components\Pages\ResourceOverview.razor.cs (4)
325
List<TelemetryFilter> errorFilters = [new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Severity), Condition =
FilterCondition
.GreaterThanOrEqual, Value = nameof(LogLevel.Error) }];
326
List<TelemetryFilter> warningFilters = [new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Severity), Condition =
FilterCondition
.Equals, Value = nameof(LogLevel.Warning) }];
327
List<TelemetryFilter> attentionFilters = [new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Severity), Condition =
FilterCondition
.GreaterThanOrEqual, Value = nameof(LogLevel.Warning) }];
344
List<TelemetryFilter> failedTraceFilters = [new FieldTelemetryFilter { Field = KnownTraceFields.StatusField, Condition =
FilterCondition
.Equals, Value = nameof(OtlpSpanStatusCode.Error) }];
Components\Pages\StructuredLogs.razor.cs (2)
210
Field = KnownStructuredLogFields.TraceIdField, Condition =
FilterCondition
.Equals, Value = TraceId
217
Field = KnownStructuredLogFields.SpanIdField, Condition =
FilterCondition
.Equals, Value = SpanId
Components\Pages\TraceDetail.razor.cs (1)
321
Condition =
FilterCondition
.Equals,
Extensions\TelemetryFilterFormatter.cs (17)
17
FilterCondition
.Equals => "equals",
18
FilterCondition
.Contains => "contains",
19
FilterCondition
.GreaterThan => "gt",
20
FilterCondition
.LessThan => "lt",
21
FilterCondition
.GreaterThanOrEqual => "gte",
22
FilterCondition
.LessThanOrEqual => "lte",
23
FilterCondition
.NotEqual => "!equals",
24
FilterCondition
.NotContains => "!contains",
52
FilterCondition
? condition = parts[1] switch
54
"equals" =>
FilterCondition
.Equals,
55
"contains" =>
FilterCondition
.Contains,
56
"gt" =>
FilterCondition
.GreaterThan,
57
"lt" =>
FilterCondition
.LessThan,
58
"gte" =>
FilterCondition
.GreaterThanOrEqual,
59
"lte" =>
FilterCondition
.LessThanOrEqual,
60
"!equals" =>
FilterCondition
.NotEqual,
61
"!contains" =>
FilterCondition
.NotContains,
Model\GenAI\GenAIVisualizerDialogViewModel.cs (1)
608
Condition =
FilterCondition
.Equals,
Model\Otlp\FilterDialogFormModel.cs (1)
16
public SelectViewModel<
FilterCondition
>? Condition { get; set; }
Model\Otlp\TelemetryFilter.cs (10)
23
public
FilterCondition
Condition { get; set; }
76
public static string ConditionToString(
FilterCondition
c, IStringLocalizer<StructuredFiltering>? loc) =>
79
FilterCondition
.Equals => "==",
80
FilterCondition
.Contains => loc?[nameof(StructuredFiltering.ConditionContains)] ?? "contains",
81
FilterCondition
.GreaterThan => ">",
82
FilterCondition
.LessThan => "<",
83
FilterCondition
.GreaterThanOrEqual => ">=",
84
FilterCondition
.LessThanOrEqual => "<=",
85
FilterCondition
.NotEqual => "!=",
86
FilterCondition
.NotContains => loc?[nameof(StructuredFiltering.ConditionNotContains)] ?? "not contains",
Model\StructuredLogsViewModel.cs (2)
138
filters.Add(new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Message), Condition =
FilterCondition
.Contains, Value = filterText });
143
filters.Add(new FieldTelemetryFilter { Field = nameof(OtlpLogEntry.Severity), Condition =
FilterCondition
.GreaterThanOrEqual, Value = logLevel.Value.ToString() });
Otlp\Storage\SqliteTelemetryRepository.cs (3)
226
new FieldTelemetryFilter { Field = KnownStructuredLogFields.TraceIdField, Condition =
FilterCondition
.Equals, Value = traceId },
227
new FieldTelemetryFilter { Field = KnownStructuredLogFields.SpanIdField, Condition =
FilterCondition
.Equals, Value = spanId }
241
new FieldTelemetryFilter { Field = KnownStructuredLogFields.TraceIdField, Condition =
FilterCondition
.Equals, Value = traceId }
Otlp\Storage\SqliteTelemetryRepository.Logs.cs (20)
610
filter.Condition is
FilterCondition
.Contains or
FilterCondition
.NotContains
648
private static string BuildStringPredicate(string expression,
FilterCondition
condition, string parameterName)
652
FilterCondition
.Equals => $"{expression} = @{parameterName} COLLATE NOCASE",
653
FilterCondition
.Contains => $"{expression} LIKE @{parameterName} ESCAPE '!'",
654
FilterCondition
.GreaterThan or
FilterCondition
.LessThan or
FilterCondition
.GreaterThanOrEqual or
FilterCondition
.LessThanOrEqual => "0 = 1",
655
FilterCondition
.NotEqual => $"{expression} <> @{parameterName} COLLATE NOCASE",
656
FilterCondition
.NotContains => $"{expression} NOT LIKE @{parameterName} ESCAPE '!'",
661
private static string BuildNumericPredicate(string expression,
FilterCondition
condition, string parameterName)
665
FilterCondition
.Equals => "=",
666
FilterCondition
.GreaterThan => ">",
667
FilterCondition
.LessThan => "<",
668
FilterCondition
.GreaterThanOrEqual => ">=",
669
FilterCondition
.LessThanOrEqual => "<=",
670
FilterCondition
.NotEqual => "<>",
671
FilterCondition
.Contains or
FilterCondition
.NotContains => null,
Otlp\Storage\SqliteTelemetryRepository.Traces.Reads.cs (16)
233
if (fieldFilter.Condition is
FilterCondition
.NotEqual or
FilterCondition
.NotContains)
338
var
condition = invertNegative
341
FilterCondition
.NotEqual =>
FilterCondition
.Equals,
342
FilterCondition
.NotContains =>
FilterCondition
.Contains,
348
condition is
FilterCondition
.Contains or
FilterCondition
.NotContains
381
if (condition is
FilterCondition
.NotEqual or
FilterCondition
.NotContains)
599
if (fieldFilter.Condition is
FilterCondition
.NotEqual or
FilterCondition
.NotContains &&
605
Condition = fieldFilter.Condition ==
FilterCondition
.NotEqual ?
FilterCondition
.Equals :
FilterCondition
.Contains,
Aspire.Dashboard.Components.Tests (41)
Dialogs\FilterDialogTests.cs (32)
30
Condition =
FilterCondition
.Contains,
49
Condition =
FilterCondition
.GreaterThanOrEqual,
57
var conditionSelect = Assert.Single(cut.FindComponents<FluentSelect<SelectViewModel<
FilterCondition
>, SelectViewModel<
FilterCondition
>>>());
59
item => Assert.Equal(
FilterCondition
.Equals, item.Id),
60
item => Assert.Equal(
FilterCondition
.NotEqual, item.Id),
61
item => Assert.Equal(
FilterCondition
.GreaterThanOrEqual, item.Id),
62
item => Assert.Equal(
FilterCondition
.GreaterThan, item.Id),
63
item => Assert.Equal(
FilterCondition
.LessThanOrEqual, item.Id),
64
item => Assert.Equal(
FilterCondition
.LessThan, item.Id));
79
Condition =
FilterCondition
.GreaterThanOrEqual,
97
Condition =
FilterCondition
.Contains,
115
var conditionSelect = Assert.Single(cut.FindComponents<FluentSelect<SelectViewModel<
FilterCondition
>, SelectViewModel<
FilterCondition
>>>());
118
item => Assert.Equal(
FilterCondition
.Equals, item.Id),
119
item => Assert.Equal(
FilterCondition
.Contains, item.Id),
120
item => Assert.Equal(
FilterCondition
.NotEqual, item.Id),
121
item => Assert.Equal(
FilterCondition
.NotContains, item.Id));
133
Condition =
FilterCondition
.Contains,
161
Condition =
FilterCondition
.Contains,
203
Condition =
FilterCondition
.Contains,
247
Condition =
FilterCondition
.Contains,
284
Condition =
FilterCondition
.Contains,
338
Condition =
FilterCondition
.Contains,
377
Condition =
FilterCondition
.Contains,
415
Condition =
FilterCondition
.Contains,
454
Condition =
FilterCondition
.Contains,
480
Condition =
FilterCondition
.Contains,
505
Condition =
FilterCondition
.GreaterThanOrEqual,
528
Condition =
FilterCondition
.GreaterThanOrEqual,
549
Condition =
FilterCondition
.Contains,
573
Condition =
FilterCondition
.Contains,
Layout\ResourcesLayoutActivityTests.cs (2)
383
Assert.Equal(
FilterCondition
.GreaterThanOrEqual, filters[0].Condition);
384
Assert.Equal(
FilterCondition
.LessThan, filters[1].Condition);
Pages\StructuredLogsTests.cs (4)
155
var filter = new FieldTelemetryFilter { Field = "TestField", Condition =
FilterCondition
.Contains, Value = "TestValue" };
191
var filter1 = new FieldTelemetryFilter { Field = "Test:Field", Condition =
FilterCondition
.Contains, Value = "Test Value" };
192
var filter2 = new FieldTelemetryFilter { Field = "Test!@#", Condition =
FilterCondition
.Contains, Value = "http://localhost#fragment?hi=true" };
193
var filter3 = new FieldTelemetryFilter { Field = "\u2764\uFE0F", Condition =
FilterCondition
.Contains, Value = "\u4F60" };
Pages\TraceDetailsTests.cs (3)
736
Condition =
FilterCondition
.GreaterThanOrEqual,
763
Condition =
FilterCondition
.GreaterThanOrEqual,
860
Condition =
FilterCondition
.GreaterThanOrEqual,
Aspire.Dashboard.Playwright.Tests (2)
Integration\Playwright\ResourcePaneResponsiveTests.cs (2)
1403
Assert.Equal(
FilterCondition
.GreaterThanOrEqual, filters[0].Condition);
1404
Assert.Equal(
FilterCondition
.LessThan, filters[1].Condition);
Aspire.Dashboard.Tests (65)
DashboardJsonSerializerContextTests.cs (2)
105
Condition =
FilterCondition
.Contains,
123
Assert.Equal(
FilterCondition
.Contains, filter.Condition);
DashboardUrlsTests.cs (4)
43
new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = "test", Value = "value" }
54
new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = "test", Value = "value" },
55
new FieldTelemetryFilter { Condition =
FilterCondition
.GreaterThan, Field = "fieldWithSpacedValue", Value = "!! multiple words here !!", Enabled = false },
56
new FieldTelemetryFilter { Condition =
FilterCondition
.NotEqual, Field = "name", Value = "nameValue" },
Model\StructuredLogsPageViewModelTests.cs (4)
143
Condition =
FilterCondition
.Contains,
163
Condition =
FilterCondition
.Contains,
183
Condition =
FilterCondition
.Contains,
204
Condition =
FilterCondition
.Contains,
TelemetryFilterFormatterTests.cs (5)
24
Condition =
FilterCondition
.GreaterThanOrEqual,
34
Assert.Equal(
FilterCondition
.GreaterThanOrEqual, filter.Condition);
50
Condition =
FilterCondition
.Equals,
70
Condition =
FilterCondition
.Equals,
90
Condition =
FilterCondition
.Equals,
TelemetryRepositoryTests\LogTests.cs (9)
262
Condition =
FilterCondition
.Equals,
1067
Filters = [new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = nameof(OtlpLogEntry.Message), Value = "does_not_contain" }]
1075
Filters = [new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = nameof(OtlpLogEntry.Message), Value = "MESSAGE" }]
1112
Filters = [new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = nameof(OtlpLogEntry.Message), Value = fragment }]
1154
Filters = [new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = KnownStructuredLogFields.EventNameField, Value = "does_not_contain" }]
1162
Filters = [new FieldTelemetryFilter { Condition =
FilterCondition
.Contains, Field = KnownStructuredLogFields.EventNameField, Value = "MyEvent" }]
1799
Condition =
FilterCondition
.Contains,
1806
Condition =
FilterCondition
.Contains,
1875
Condition =
FilterCondition
.Equals,
TelemetryRepositoryTests\TelemetryRepositoryTests.cs (6)
951
Condition =
FilterCondition
.Contains
1043
Condition =
FilterCondition
.GreaterThanOrEqual
1222
Condition =
FilterCondition
.Contains,
1229
Condition =
FilterCondition
.Contains,
1320
Condition =
FilterCondition
.Contains,
1327
Condition =
FilterCondition
.Contains,
TelemetryRepositoryTests\TraceTests.cs (35)
169
Condition =
FilterCondition
.Equals,
1708
new FieldTelemetryFilter { Field = "key1", Condition =
FilterCondition
.Equals, Value = "value1" }
1726
new FieldTelemetryFilter { Field = "key2", Condition =
FilterCondition
.Equals, Value = "value2" }
1744
new FieldTelemetryFilter { Field = "key1", Condition =
FilterCondition
.Equals, Value = "value1" },
1745
new FieldTelemetryFilter { Field = "key2", Condition =
FilterCondition
.Equals, Value = "value2" }
1797
new FieldTelemetryFilter { Field = name, Condition =
FilterCondition
.NotEqual, Value = value }
1812
new FieldTelemetryFilter { Field = name, Condition =
FilterCondition
.Equals, Value = value }
1867
new FieldTelemetryFilter { Field = "dynamic.filter", Condition =
FilterCondition
.Equals, Value = "match" },
1868
new FieldTelemetryFilter { Field = KnownTraceFields.DurationField, Condition =
FilterCondition
.GreaterThanOrEqual, Value = "20" }
1924
Filters = [new FieldTelemetryFilter { Field = KnownTraceFields.DurationField, Condition =
FilterCondition
.GreaterThan, Value = "50" }]
1936
Filters = [new FieldTelemetryFilter { Field = KnownTraceFields.DurationField, Condition =
FilterCondition
.LessThan, Value = "10" }]
1974
new FieldTelemetryFilter { Field = "key1", Condition =
FilterCondition
.NotEqual, Value = "other_value" }
3428
[InlineData(
FilterCondition
.Equals, "1", "3")]
3429
[InlineData(
FilterCondition
.NotEqual, "2")]
3430
public async Task GetTraces_StatusFilter_ReturnsMatchingTraces(
FilterCondition
condition, params string[] expectedTraceIds)
3538
[InlineData(
FilterCondition
.NotEqual, "TestService", 0)]
3539
[InlineData(
FilterCondition
.NotEqual, "TestPeer", 0)]
3540
[InlineData(
FilterCondition
.NotEqual, "other", 1)]
3541
[InlineData(
FilterCondition
.NotContains, "Service", 0)]
3542
[InlineData(
FilterCondition
.NotContains, "Peer", 0)]
3543
[InlineData(
FilterCondition
.NotContains, "other", 1)]
3544
public async Task GetSpans_NegativeServiceNameFilter_AppliesToSourceAndPeer(
FilterCondition
condition, string value, int expectedCount)
3633
Condition =
FilterCondition
.GreaterThanOrEqual,
3823
Condition =
FilterCondition
.Equals,
4070
Condition =
FilterCondition
.Contains,
4077
Condition =
FilterCondition
.Contains,
4132
Condition =
FilterCondition
.NotContains,
4182
Condition =
FilterCondition
.NotContains,
4233
Condition =
FilterCondition
.NotEqual,
4316
new FieldTelemetryFilter { Field = "env", Condition =
FilterCondition
.Contains, Value = "prod" },
4317
new FieldTelemetryFilter { Field = KnownTraceFields.NameField, Condition =
FilterCondition
.NotContains, Value = "1-1" }
4374
Condition =
FilterCondition
.NotContains,
4427
Condition =
FilterCondition
.NotContains,
4482
Condition =
FilterCondition
.NotContains,
4556
Condition =
FilterCondition
.NotEqual,