Skip to content

Commit

Permalink
Merge branch 'main' into feature/prometheus-scope-info
Browse files Browse the repository at this point in the history
  • Loading branch information
robertcoltheart committed Dec 7, 2023
2 parents 5b5f0df + 7419d85 commit 4e5e577
Show file tree
Hide file tree
Showing 84 changed files with 1,047 additions and 661 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci-aot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: publish AOT testApp, assert static analysis warning count, and run the app
shell: pwsh
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-concurrency.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: Run Coyote Tests
shell: pwsh
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-instrumentation-libraries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: dotnet restore
run: dotnet restore ./build/InstrumentationLibraries.proj -p:RunningDotNetPack=true
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: Install dependencies
run: dotnet restore
Expand Down Expand Up @@ -56,7 +56,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: Install dependencies
run: dotnet restore
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/code-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: Install dependencies
run: dotnet restore
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/dotnet-format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
uses: actions/checkout@v4

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: dotnet restore
run: dotnet restore
Expand All @@ -39,7 +39,7 @@ jobs:
uses: actions/checkout@v4

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: dotnet restore
run: dotnet restore
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/package-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: Pack
run: dotnet pack OpenTelemetry.proj --configuration Release /p:EnablePackageValidation=true /p:ExposeExperimentalFeatures=false
Expand All @@ -30,7 +30,7 @@ jobs:
fetch-depth: 0 # fetching all

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: Pack
run: dotnet pack OpenTelemetry.proj --configuration Release /p:EnablePackageValidation=true /p:ExposeExperimentalFeatures=true
2 changes: 1 addition & 1 deletion .github/workflows/publish-packages-1.0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
ref: ${{ github.ref || 'main' }}

- name: Setup dotnet
uses: actions/setup-dotnet@v3
uses: actions/setup-dotnet@v4

- name: dotnet restore
run: dotnet restore OpenTelemetry.proj -p:RunningDotNetPack=true
Expand Down
1 change: 0 additions & 1 deletion Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,6 @@
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="[17.8.0,18.0.0)" />
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="[1.1.1,2.0)" />
<PackageVersion Include="MinVer" Version="[4.3.0,5.0)" />
<PackageVersion Include="Moq" Version="[4.18.4,5.0)" />
<PackageVersion Include="OpenTelemetry.Instrumentation.Runtime" Version="[1.5.1,2.0)" />
<PackageVersion Include="RabbitMQ.Client" Version="[6.6.0,7.0)" />
<PackageVersion Include="StyleCop.Analyzers" Version="[1.2.0-beta.507,2.0)" />
Expand Down
2 changes: 1 addition & 1 deletion examples/AspNetCore/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
.AddAspNetCoreInstrumentation();
// Use IConfiguration binding for AspNetCore instrumentation options.
appBuilder.Services.Configure<AspNetCoreInstrumentationOptions>(appBuilder.Configuration.GetSection("AspNetCoreInstrumentation"));
appBuilder.Services.Configure<AspNetCoreTraceInstrumentationOptions>(appBuilder.Configuration.GetSection("AspNetCoreInstrumentation"));
switch (tracingExporter)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,10 @@
file static class AssemblyInfo
{
public const string PublicKey = ", PublicKey=002400000480000094000000060200000024000052534131000400000100010051C1562A090FB0C9F391012A32198B5E5D9A60E9B80FA2D7B434C9E5CCB7259BD606E66F9660676AFC6692B8CDC6793D190904551D2103B7B22FA636DCBB8208839785BA402EA08FC00C8F1500CCEF28BBF599AA64FFB1E1D5DC1BF3420A3777BADFE697856E9D52070A50C3EA5821C80BEF17CA3ACFFA28F89DD413F096F898";
public const string MoqPublicKey = ", PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7";
}
#else
file static class AssemblyInfo
{
public const string PublicKey = "";
public const string MoqPublicKey = "";
}
#endif
3 changes: 0 additions & 3 deletions src/OpenTelemetry.Api/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
[assembly: InternalsVisibleTo("OpenTelemetry.Api.Tests" + AssemblyInfo.PublicKey)]
[assembly: InternalsVisibleTo("OpenTelemetry.Shims.OpenTracing.Tests" + AssemblyInfo.PublicKey)]
[assembly: InternalsVisibleTo("OpenTelemetry.Tests" + AssemblyInfo.PublicKey)]
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2" + AssemblyInfo.MoqPublicKey)]

#if !EXPOSE_EXPERIMENTAL_FEATURES
[assembly: InternalsVisibleTo("OpenTelemetry.Api.ProviderBuilderExtensions.Tests" + AssemblyInfo.PublicKey)]
Expand All @@ -37,12 +36,10 @@
file static class AssemblyInfo
{
public const string PublicKey = ", PublicKey=002400000480000094000000060200000024000052534131000400000100010051C1562A090FB0C9F391012A32198B5E5D9A60E9B80FA2D7B434C9E5CCB7259BD606E66F9660676AFC6692B8CDC6793D190904551D2103B7B22FA636DCBB8208839785BA402EA08FC00C8F1500CCEF28BBF599AA64FFB1E1D5DC1BF3420A3777BADFE697856E9D52070A50C3EA5821C80BEF17CA3ACFFA28F89DD413F096F898";
public const string MoqPublicKey = ", PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7";
}
#else
file static class AssemblyInfo
{
public const string PublicKey = "";
public const string MoqPublicKey = "";
}
#endif
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,8 @@
[assembly: InternalsVisibleTo("OpenTelemetry.Exporter.OpenTelemetryProtocol.Tests, PublicKey=002400000480000094000000060200000024000052534131000400000100010051c1562a090fb0c9f391012a32198b5e5d9a60e9b80fa2d7b434c9e5ccb7259bd606e66f9660676afc6692b8cdc6793d190904551d2103b7b22fa636dcbb8208839785ba402ea08fc00c8f1500ccef28bbf599aa64ffb1e1d5dc1bf3420a3777badfe697856e9d52070a50c3ea5821c80bef17ca3acffa28f89dd413f096f898")]
[assembly: InternalsVisibleTo("Benchmarks, PublicKey=002400000480000094000000060200000024000052534131000400000100010051c1562a090fb0c9f391012a32198b5e5d9a60e9b80fa2d7b434c9e5ccb7259bd606e66f9660676afc6692b8cdc6793d190904551d2103b7b22fa636dcbb8208839785ba402ea08fc00c8f1500ccef28bbf599aa64ffb1e1d5dc1bf3420a3777badfe697856e9d52070a50c3ea5821c80bef17ca3acffa28f89dd413f096f898")]
[assembly: InternalsVisibleTo("MockOpenTelemetryCollector, PublicKey=002400000480000094000000060200000024000052534131000400000100010051c1562a090fb0c9f391012a32198b5e5d9a60e9b80fa2d7b434c9e5ccb7259bd606e66f9660676afc6692b8cdc6793d190904551d2103b7b22fa636dcbb8208839785ba402ea08fc00c8f1500ccef28bbf599aa64ffb1e1d5dc1bf3420a3777badfe697856e9d52070a50c3ea5821c80bef17ca3acffa28f89dd413f096f898")]

// Used by Moq.
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("OpenTelemetry.Exporter.OpenTelemetryProtocol.Tests")]
[assembly: InternalsVisibleTo("Benchmarks")]
[assembly: InternalsVisibleTo("MockOpenTelemetryCollector")]

// Used by Moq.
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@

## Unreleased

* Added ability to export otel_scop_info and handle OpenMetrics requests from Prometheus
* Export OpenMetrics format from Prometheus exporters ([#5107](https://github.com/open-telemetry/opentelemetry-dotnet/pull/5107))
* Added ability to export otel_scop_info and handle OpenMetrics requests from Prometheus ([#5086](https://github.com/open-telemetry/opentelemetry-dotnet/pull/5086))

## 1.7.0-rc.1

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
<Compile Include="$(RepoRoot)\src\OpenTelemetry.Exporter.Prometheus.HttpListener\Internal\PrometheusSerializerExt.cs" Link="Includes/PrometheusSerializerExt.cs" />
<Compile Include="$(RepoRoot)\src\OpenTelemetry.Exporter.Prometheus.HttpListener\Internal\PrometheusType.cs" Link="Includes/PrometheusType.cs" />
<Compile Include="$(RepoRoot)\src\OpenTelemetry.Exporter.Prometheus.HttpListener\Internal\PrometheusMetric.cs" Link="Includes/PrometheusMetric.cs" />
<Compile Include="$(RepoRoot)\src\OpenTelemetry.Exporter.Prometheus.HttpListener\Internal\PrometheusHeadersParser.cs" Link="Includes/PrometheusHeadersParser.cs" />
<Compile Include="$(RepoRoot)\src\Shared\ExceptionExtensions.cs" Link="Includes\ExceptionExtensions.cs" />
</ItemGroup>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
using System.Diagnostics;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Primitives;
using Microsoft.Net.Http.Headers;
using OpenTelemetry.Exporter.Prometheus;
using OpenTelemetry.Internal;
using OpenTelemetry.Metrics;
Expand Down Expand Up @@ -68,9 +67,7 @@ public async Task InvokeAsync(HttpContext httpContext)

try
{
var openMetricsRequested =
this.exporter.OpenMetricsEnabled && this.AcceptsOpenMetrics(httpContext.Request);

var openMetricsRequested = AcceptsOpenMetrics(httpContext.Request);
var collectionResponse = await this.exporter.CollectionManager.EnterCollect(openMetricsRequested).ConfigureAwait(false);

try
Expand All @@ -83,15 +80,9 @@ public async Task InvokeAsync(HttpContext httpContext)
#else
response.Headers.Add("Last-Modified", collectionResponse.GeneratedAtUtc.ToString("R"));
#endif

if (openMetricsRequested)
{
response.ContentType = "application/openmetrics-text; version=1.0.0; charset=utf-8";
}
else
{
response.ContentType = "text/plain; charset=utf-8; version=0.0.4";
}
response.ContentType = openMetricsRequested
? "application/openmetrics-text; version=1.0.0; charset=utf-8"
: "text/plain; charset=utf-8; version=0.0.4";

await response.Body.WriteAsync(collectionResponse.View.Array, 0, collectionResponse.View.Count).ConfigureAwait(false);
}
Expand Down Expand Up @@ -119,22 +110,18 @@ public async Task InvokeAsync(HttpContext httpContext)
this.exporter.OnExport = null;
}

private bool AcceptsOpenMetrics(HttpRequest request)
private static bool AcceptsOpenMetrics(HttpRequest request)
{
var requestAccept = request.Headers[HeaderNames.Accept];
var acceptHeader = request.Headers.Accept;

if (StringValues.IsNullOrEmpty(requestAccept))
if (StringValues.IsNullOrEmpty(acceptHeader))
{
return false;
}

var acceptTypes = requestAccept.ToString().Split(',');

foreach (var acceptType in acceptTypes)
foreach (var header in acceptHeader)
{
var acceptSubType = acceptType.Split(';').FirstOrDefault()?.Trim();

if (acceptSubType == OpenMetricsMediaType)
if (PrometheusHeadersParser.AcceptsOpenMetrics(header))
{
return true;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

## Unreleased

* Export OpenMetrics format from Prometheus exporters ([#5107](https://github.com/open-telemetry/opentelemetry-dotnet/pull/5107))

## 1.7.0-rc.1

Released 2023-Nov-29
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,14 @@ private ExportResult OnCollect(Batch<Metric> metrics)
{
try
{
cursor = PrometheusSerializer.WriteScopeInfo(this.buffer, cursor, scope);
cursor = PrometheusSerializer.WriteMetric(
this.buffer,
cursor,
metric,
this.GetPrometheusMetric(metric),
this.exporter.OpenMetricsRequested);

break;
}
catch (IndexOutOfRangeException)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ public PrometheusExporter(PrometheusExporterOptions options)

internal int ScrapeResponseCacheDurationMilliseconds { get; }

internal bool OpenMetricsEnabled { get; }
internal bool OpenMetricsRequested { get; set; }

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (ubuntu-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (ubuntu-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-report (windows-latest)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net7.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net462)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-experimental (windows-latest, net8.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

Check failure on line 69 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusExporter.cs

View workflow job for this annotation

GitHub Actions / build-test-stable (windows-latest, net6.0)

The type 'PrometheusExporter' already contains a definition for 'OpenMetricsRequested'

/// <inheritdoc/>
public override ExportResult Export(in Batch<Metric> metrics)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// <copyright file="PrometheusHeadersParser.cs" company="OpenTelemetry Authors">
// Copyright The OpenTelemetry Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>

namespace OpenTelemetry.Exporter.Prometheus;

internal static class PrometheusHeadersParser
{
private const string OpenMetricsMediaType = "application/openmetrics-text";

internal static bool AcceptsOpenMetrics(string contentType)
{
var value = contentType.AsSpan();

while (value.Length > 0)
{
var headerValue = SplitNext(ref value, ',');
var mediaType = SplitNext(ref headerValue, ';');

if (mediaType.Equals(OpenMetricsMediaType.AsSpan(), StringComparison.Ordinal))
{
return true;
}
}

return false;
}

private static ReadOnlySpan<char> SplitNext(ref ReadOnlySpan<char> span, char character)
{
var index = span.IndexOf(character);

if (index == -1)
{
var part = span;
span = span.Slice(span.Length);

return part;
}
else
{
var part = span.Slice(0, index);
span = span.Slice(index + 1);

return part;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@ public static bool CanWriteMetric(Metric metric)
return true;
}

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-stable

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-stable

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-stable

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-stable

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-stable

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-experimental

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-experimental

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-experimental

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-experimental

Code should not contain multiple blank lines in a row

Check warning on line 37 in src/OpenTelemetry.Exporter.Prometheus.HttpListener/Internal/PrometheusSerializerExt.cs

View workflow job for this annotation

GitHub Actions / check-format-experimental

Code should not contain multiple blank lines in a row
public static int WriteMetric(byte[] buffer, int cursor, Metric metric, PrometheusMetric prometheusMetric, bool openMetricsEnabled = true, bool openMetricsRequested = false)

public static int WriteMetric(byte[] buffer, int cursor, Metric metric, PrometheusMetric prometheusMetric, bool openMetricsRequested = false)
{
cursor = WriteTypeMetadata(buffer, cursor, prometheusMetric);
cursor = WriteUnitMetadata(buffer, cursor, prometheusMetric);
Expand Down
Loading

0 comments on commit 4e5e577

Please sign in to comment.