Skip to content

Commit

Permalink
Added OpenTelemetry instrumentation to samples using core projects
Browse files Browse the repository at this point in the history
  • Loading branch information
oskardudycz committed Nov 26, 2022
1 parent b88440b commit cc04cd0
Show file tree
Hide file tree
Showing 16 changed files with 76 additions and 0 deletions.
2 changes: 2 additions & 0 deletions Sample/ECommerce/Orders/Orders.Api/Orders.Api.csproj
Expand Up @@ -5,6 +5,8 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Npgsql.OpenTelemetry" Version="7.0.0" />
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
Expand Down
9 changes: 9 additions & 0 deletions Sample/ECommerce/Orders/Orders.Api/Program.cs
Expand Up @@ -3,11 +3,14 @@
using Core.Exceptions;
using Core.Kafka;
using Core.Marten.OptimisticConcurrency;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.OptimisticConcurrency;
using Core.WebApi.Swagger;
using Marten.Exceptions;
using Microsoft.OpenApi.Models;
using Npgsql;
using OpenTelemetry.Trace;
using Orders;

var builder = WebApplication.CreateBuilder(args);
Expand All @@ -25,6 +28,12 @@
sp => sp.GetRequiredService<MartenExpectedStreamVersionProvider>().TrySet,
sp => () => sp.GetRequiredService<MartenNextStreamVersionProvider>().Value?.ToString()
)
.AddOpenTelemetry("Orders", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
.AddNpgsql()
).DisableConsoleExporter(true)
))
.AddControllers();

var app = builder.Build();
Expand Down
2 changes: 2 additions & 0 deletions Sample/ECommerce/Payments/Payments.Api/Payments.Api.csproj
Expand Up @@ -5,6 +5,8 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Npgsql.OpenTelemetry" Version="7.0.0" />
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
Expand Down
9 changes: 9 additions & 0 deletions Sample/ECommerce/Payments/Payments.Api/Program.cs
Expand Up @@ -3,11 +3,14 @@
using Core.Exceptions;
using Core.Kafka;
using Core.Marten.OptimisticConcurrency;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.OptimisticConcurrency;
using Core.WebApi.Swagger;
using Marten.Exceptions;
using Microsoft.OpenApi.Models;
using Npgsql;
using OpenTelemetry.Trace;
using Payments;

var builder = WebApplication.CreateBuilder(args);
Expand All @@ -25,6 +28,12 @@
sp => sp.GetRequiredService<MartenExpectedStreamVersionProvider>().TrySet,
sp => () => sp.GetRequiredService<MartenNextStreamVersionProvider>().Value?.ToString()
)
.AddOpenTelemetry("Payments", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
.AddNpgsql()
).DisableConsoleExporter(true)
))
.AddControllers();

var app = builder.Build();
Expand Down
9 changes: 9 additions & 0 deletions Sample/ECommerce/Shipments/Shipments.Api/Program.cs
Expand Up @@ -2,9 +2,12 @@
using Core;
using Core.Exceptions;
using Core.Kafka;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.Swagger;
using Microsoft.OpenApi.Models;
using Npgsql;
using OpenTelemetry.Trace;
using Shipments;

var builder = WebApplication.CreateBuilder(args);
Expand All @@ -18,6 +21,12 @@
.AddKafkaProducer()
.AddCoreServices()
.AddShipmentsModule(builder.Configuration)
.AddOpenTelemetry("Shipments", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
.AddNpgsql()
).DisableConsoleExporter(true)
))
.AddControllers();
// TODO: Add optimistic concurrency here
// .AddOptimisticConcurrencyMiddleware();
Expand Down
2 changes: 2 additions & 0 deletions Sample/ECommerce/Shipments/Shipments.Api/Shipments.Api.csproj
Expand Up @@ -5,6 +5,8 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Npgsql.OpenTelemetry" Version="7.0.0" />
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
Expand Down
Expand Up @@ -5,6 +5,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
Expand Down
7 changes: 7 additions & 0 deletions Sample/EventStoreDB/ECommerce/Carts/Carts.Api/Program.cs
Expand Up @@ -4,11 +4,13 @@
using Core.EventStoreDB;
using Core.EventStoreDB.OptimisticConcurrency;
using Core.Exceptions;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.OptimisticConcurrency;
using Core.WebApi.Swagger;
using EventStore.Client;
using Microsoft.OpenApi.Models;
using OpenTelemetry.Trace;

var builder = WebApplication.CreateBuilder(args);

Expand All @@ -25,6 +27,11 @@
sp => sp.GetRequiredService<EventStoreDBExpectedStreamRevisionProvider>().TrySet,
sp => () => sp.GetRequiredService<EventStoreDBNextStreamRevisionProvider>().Value?.ToString()
)
.AddOpenTelemetry("Carts", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
).DisableConsoleExporter(true)
))
.AddControllers();

var app = builder.Build();
Expand Down
Expand Up @@ -9,6 +9,7 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
</ItemGroup>

<ItemGroup>
Expand Down
7 changes: 7 additions & 0 deletions Sample/EventStoreDB/Simple/ECommerce.Api/Program.cs
Expand Up @@ -2,13 +2,15 @@
using Core.EventStoreDB;
using Core.EventStoreDB.OptimisticConcurrency;
using Core.Exceptions;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.OptimisticConcurrency;
using Core.WebApi.Swagger;
using ECommerce;
using EventStore.Client;
using ECommerce.Core;
using Microsoft.OpenApi.Models;
using OpenTelemetry.Trace;

var builder = WebApplication.CreateBuilder(args);

Expand All @@ -25,6 +27,11 @@
sp => sp.GetRequiredService<EventStoreDBExpectedStreamRevisionProvider>().TrySet,
sp => () => sp.GetRequiredService<EventStoreDBNextStreamRevisionProvider>().Value?.ToString()
)
.AddOpenTelemetry("Carts", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
).DisableConsoleExporter(true)
))
.AddControllers();

var app = builder.Build();
Expand Down
Expand Up @@ -7,6 +7,7 @@
<ItemGroup>
<PackageReference Include="Marten" Version="6.0.0-alpha.3" />
<PackageReference Include="MediatR" Version="11.0.0" />
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
</ItemGroup>
Expand Down
7 changes: 7 additions & 0 deletions Sample/MeetingsManagement/MeetingsManagement.Api/Program.cs
Expand Up @@ -3,12 +3,14 @@
using Core.Exceptions;
using Core.Kafka;
using Core.Marten.OptimisticConcurrency;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.OptimisticConcurrency;
using Core.WebApi.Swagger;
using Marten.Exceptions;
using MeetingsManagement;
using Microsoft.OpenApi.Models;
using OpenTelemetry.Trace;

var builder = WebApplication.CreateBuilder(args);

Expand All @@ -25,6 +27,11 @@
sp => sp.GetRequiredService<MartenExpectedStreamVersionProvider>().TrySet,
sp => () => sp.GetRequiredService<MartenNextStreamVersionProvider>().Value?.ToString()
)
.AddOpenTelemetry("MeetingsManagement", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
).DisableConsoleExporter(true)
))
.AddControllers();

var app = builder.Build();
Expand Down
Expand Up @@ -6,6 +6,7 @@

<ItemGroup>
<PackageReference Include="MediatR" Version="11.0.0" />
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
</ItemGroup>
Expand Down
7 changes: 7 additions & 0 deletions Sample/MeetingsManagement/MeetingsSearch.Api/Program.cs
@@ -1,9 +1,11 @@
using Core;
using Core.Kafka;
using Core.OpenTelemetry;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.Swagger;
using MeetingsSearch;
using Microsoft.OpenApi.Models;
using OpenTelemetry.Trace;

var builder = WebApplication.CreateBuilder(args);

Expand All @@ -16,6 +18,11 @@
.AddKafkaConsumer()
.AddCoreServices()
.AddMeetingsSearch(builder.Configuration)
.AddOpenTelemetry("MeetingsSearch", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
).DisableConsoleExporter(true)
))
.AddControllers();

var app = builder.Build();
Expand Down
9 changes: 9 additions & 0 deletions Sample/Tickets/Tickets.Api/Program.cs
Expand Up @@ -2,12 +2,15 @@
using Core;
using Core.Exceptions;
using Core.Marten.OptimisticConcurrency;
using Core.OpenTelemetry;
using Core.Serialization.Newtonsoft;
using Core.WebApi.Middlewares.ExceptionHandling;
using Core.WebApi.OptimisticConcurrency;
using Core.WebApi.Swagger;
using Marten.Exceptions;
using Microsoft.OpenApi.Models;
using Npgsql;
using OpenTelemetry.Trace;
using Tickets;

var builder = WebApplication.CreateBuilder(args);
Expand All @@ -24,6 +27,12 @@
sp => sp.GetRequiredService<MartenExpectedStreamVersionProvider>().TrySet,
sp => () => sp.GetRequiredService<MartenNextStreamVersionProvider>().Value?.ToString()
)
.AddOpenTelemetry("Tickets", OpenTelemetryOptions.Build(options =>
options.Configure(t =>
t.AddJaegerExporter()
.AddNpgsql()
).DisableConsoleExporter(true)
))
.AddControllers()
.AddNewtonsoftJson(opt => opt.SerializerSettings.WithDefaults());

Expand Down
2 changes: 2 additions & 0 deletions Sample/Tickets/Tickets.Api/Tickets.Api.csproj
Expand Up @@ -5,6 +5,8 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Npgsql.OpenTelemetry" Version="7.0.0" />
<PackageReference Include="OpenTelemetry.Exporter.Jaeger" Version="1.4.0-beta.3" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.0" />
</ItemGroup>
Expand Down

0 comments on commit cc04cd0

Please sign in to comment.