feat: use simplified meter creation.

This commit is contained in:
redglow
2026-07-29 11:48:46 +02:00
parent d268fff7b4
commit b3073ee1ba
2 changed files with 3 additions and 15 deletions
+1 -1
View File
@@ -35,6 +35,6 @@ public partial class GameServiceSource : RootServiceSource
{ {
serviceCollection.AddObservability(builder => builder serviceCollection.AddObservability(builder => builder
.AddGrpcExporter("http://localhost:4317") .AddGrpcExporter("http://localhost:4317")
.AddMeterName(MetricsHandler.MeterName)); .AddMeterName());
} }
} }
+2 -14
View File
@@ -1,32 +1,20 @@
using System; using System;
using System.Diagnostics.Metrics; using System.Diagnostics.Metrics;
using System.Reflection;
using GodotHostTest.Interfaces; using GodotHostTest.Interfaces;
using OwofGames.GodotHost; using OwofGames.GodotHost;
using OwofGames.GodotHost.Observability;
using R3; using R3;
namespace GodotHostTest.Game.Metrics; namespace GodotHostTest.Game.Metrics;
public class MetricsHandler(IMeterFactory meterFactory, ITargetEventBus targetEventBus) : IHostLifetime public class MetricsHandler(IMeterFactory meterFactory, ITargetEventBus targetEventBus) : IHostLifetime
{ {
public static readonly string MeterName;
private static readonly string? MeterVersion;
private IDisposable? _disposables; private IDisposable? _disposables;
static MetricsHandler()
{
var assemblyName = Assembly.GetExecutingAssembly().GetName();
MeterName = assemblyName.Name!;
MeterVersion = assemblyName.Version?.ToString();
}
public void Startup() public void Startup()
{ {
// create meter // create meter
var assemblyName = Assembly.GetExecutingAssembly().GetName(); var meter = meterFactory.Create();
var meterName = assemblyName.Name!;
var meterVersion = assemblyName.Version?.ToString();
var meter = meterFactory.Create(meterName, meterVersion);
// create instruments // create instruments
var hitTargetsCounter = var hitTargetsCounter =