Skip to content

Commit 8943733

Browse files
authored
[Exporter.InMemory] - enable analysis (#6165)
1 parent 796f49b commit 8943733

File tree

10 files changed

+26
-12
lines changed

10 files changed

+26
-12
lines changed

build/Common.nonprod.props

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Import Project=".\Common.props" />
33

44
<PropertyGroup>
5-
<NoWarn>$(NoWarn),1574,1591</NoWarn>
5+
<NoWarn>$(NoWarn),CS1574,CS1591</NoWarn>
66
<IsPackable>false</IsPackable>
77
<CodeAnalysisRuleSet>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), 'OpenTelemetry.sln'))\build\OpenTelemetry.test.ruleset</CodeAnalysisRuleSet>
88
</PropertyGroup>

src/OpenTelemetry.Api/Trace/TelemetrySpan.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ public ActivitySpanId ParentSpanId
4545
/// <param name="value">Status to be set.</param>
4646
public void SetStatus(Status value)
4747
{
48-
#pragma warning disable
48+
#pragma warning disable CS0618 // Type or member is obsolete
4949
this.Activity.SetStatus(value);
50-
#pragma warning restore
50+
#pragma warning restore CS0618 // Type or member is obsolete
5151
}
5252

5353
/// <summary>

src/OpenTelemetry.Exporter.Console/OpenTelemetry.Exporter.Console.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
</PropertyGroup>
1010

1111
<PropertyGroup>
12-
<NoWarn>$(NoWarn),1591</NoWarn>
12+
<NoWarn>$(NoWarn),CS1591</NoWarn>
1313
</PropertyGroup>
1414

1515
<ItemGroup>

src/OpenTelemetry.Exporter.InMemory/InMemoryExporterHelperExtensions.cs

+2
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ public static TracerProviderBuilder AddInMemoryExporter(this TracerProviderBuild
2020
Guard.ThrowIfNull(builder);
2121
Guard.ThrowIfNull(exportedItems);
2222

23+
#pragma warning disable CA2000 // Dispose objects before losing scope
2324
return builder.AddProcessor(new SimpleActivityExportProcessor(new InMemoryExporter<Activity>(exportedItems)));
25+
#pragma warning restore CA2000 // Dispose objects before losing scope
2426
}
2527
}

src/OpenTelemetry.Exporter.InMemory/InMemoryExporterLoggingExtensions.cs

+4
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,12 @@ public static OpenTelemetryLoggerOptions AddInMemoryExporter(
2222
Guard.ThrowIfNull(loggerOptions);
2323
Guard.ThrowIfNull(exportedItems);
2424

25+
#pragma warning disable CA2000 // Dispose objects before losing scope
2526
var logExporter = BuildExporter(exportedItems);
2627

2728
return loggerOptions.AddProcessor(
2829
new SimpleLogRecordExportProcessor(logExporter));
30+
#pragma warning restore CA2000 // Dispose objects before losing scope
2931
}
3032

3133
/// <summary>
@@ -41,10 +43,12 @@ public static LoggerProviderBuilder AddInMemoryExporter(
4143
Guard.ThrowIfNull(loggerProviderBuilder);
4244
Guard.ThrowIfNull(exportedItems);
4345

46+
#pragma warning disable CA2000 // Dispose objects before losing scope
4447
var logExporter = BuildExporter(exportedItems);
4548

4649
return loggerProviderBuilder.AddProcessor(
4750
new SimpleLogRecordExportProcessor(logExporter));
51+
#pragma warning restore CA2000 // Dispose objects before losing scope
4852
}
4953

5054
private static InMemoryExporter<LogRecord> BuildExporter(ICollection<LogRecord> exportedItems)

src/OpenTelemetry.Exporter.InMemory/InMemoryExporterMetricsExtensions.cs

+6-2
Original file line numberDiff line numberDiff line change
@@ -147,11 +147,13 @@ public static MeterProviderBuilder AddInMemoryExporter(
147147
});
148148
}
149149

150-
private static MetricReader BuildInMemoryExporterMetricReader(
150+
private static PeriodicExportingMetricReader BuildInMemoryExporterMetricReader(
151151
ICollection<Metric> exportedItems,
152152
MetricReaderOptions metricReaderOptions)
153153
{
154+
#pragma warning disable CA2000 // Dispose objects before losing scope
154155
var metricExporter = new InMemoryExporter<Metric>(exportedItems);
156+
#pragma warning restore CA2000 // Dispose objects before losing scope
155157

156158
return PeriodicExportingMetricReaderHelper.CreatePeriodicExportingMetricReader(
157159
metricExporter,
@@ -160,12 +162,14 @@ private static MetricReader BuildInMemoryExporterMetricReader(
160162
DefaultExportTimeoutMilliseconds);
161163
}
162164

163-
private static MetricReader BuildInMemoryExporterMetricReader(
165+
private static PeriodicExportingMetricReader BuildInMemoryExporterMetricReader(
164166
ICollection<MetricSnapshot> exportedItems,
165167
MetricReaderOptions metricReaderOptions)
166168
{
169+
#pragma warning disable CA2000 // Dispose objects before losing scope
167170
var metricExporter = new InMemoryExporter<Metric>(
168171
exportFunc: (in Batch<Metric> metricBatch) => ExportMetricSnapshot(in metricBatch, exportedItems));
172+
#pragma warning restore CA2000 // Dispose objects before losing scope
169173

170174
return PeriodicExportingMetricReaderHelper.CreatePeriodicExportingMetricReader(
171175
metricExporter,

src/OpenTelemetry.Exporter.InMemory/MetricSnapshot.cs

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
// Copyright The OpenTelemetry Authors
22
// SPDX-License-Identifier: Apache-2.0
33

4+
using OpenTelemetry.Internal;
5+
46
namespace OpenTelemetry.Metrics;
57

68
/// <summary>
@@ -14,10 +16,11 @@ public class MetricSnapshot
1416

1517
public MetricSnapshot(Metric metric)
1618
{
19+
Guard.ThrowIfNull(metric);
1720
this.instrumentIdentity = metric.InstrumentIdentity;
1821
this.MetricType = metric.MetricType;
1922

20-
List<MetricPoint> metricPoints = new();
23+
List<MetricPoint> metricPoints = [];
2124
foreach (ref readonly var metricPoint in metric.GetMetricPoints())
2225
{
2326
metricPoints.Add(metricPoint.Copy());

src/OpenTelemetry.Exporter.InMemory/OpenTelemetry.Exporter.InMemory.csproj

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<TargetFrameworks>$(TargetFrameworksForLibraries)</TargetFrameworks>
55
<Description>In-memory exporter for OpenTelemetry .NET</Description>
66
<PackageTags>$(PackageTags)</PackageTags>
77
<MinVerTagPrefix>core-</MinVerTagPrefix>
8+
<AnalysisLevel>latest-all</AnalysisLevel>
89
</PropertyGroup>
910

1011
<PropertyGroup>
11-
<NoWarn>$(NoWarn),1591</NoWarn>
12+
<NoWarn>$(NoWarn),CS1591</NoWarn>
1213
</PropertyGroup>
1314

1415
<ItemGroup>

src/OpenTelemetry.Extensions.Propagators/OpenTelemetry.Extensions.Propagators.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</ItemGroup>
1313

1414
<PropertyGroup>
15-
<NoWarn>$(NoWarn),1591</NoWarn>
15+
<NoWarn>$(NoWarn),CS1591</NoWarn>
1616
</PropertyGroup>
1717

1818
</Project>

src/OpenTelemetry/Trace/Processor/ExceptionProcessor.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,9 @@ public override void OnEnd(Activity activity)
6262

6363
if (snapshot != pointers)
6464
{
65-
#pragma warning disable
65+
#pragma warning disable CS0618 // Type or member is obsolete
6666
activity.SetStatus(Status.Error);
67-
#pragma warning restore
67+
#pragma warning restore CS0618 // Type or member is obsolete
6868
}
6969
}
7070
}

0 commit comments

Comments
 (0)