protected override void Setup(FeatureConfigurationContext context) { #region setup-datadog-client var dogstatsdConfig = new StatsdConfig { StatsdServerName = "127.0.0.1", StatsdPort = 8125, }; //Datadog agent default address, port DogStatsd.Configure(dogstatsdConfig); #endregion #region datadog-enable-nsb-metrics _metricsOptions.RegisterObservers(register: probeContext => { foreach (var duration in probeContext.Durations) { if (!_nameMapping.ContainsKey(duration.Name)) { continue; } duration.Register((ref DurationEvent @event) => { var statName = ComposeStatName(duration.Name); var tags = ComposeTags(@event.MessageType); DogStatsd.Timer(statName, @event.Duration.TotalMilliseconds, tags: tags); }); } foreach (var signal in probeContext.Signals) { if (!_nameMapping.ContainsKey(signal.Name)) { continue; } signal.Register((ref SignalEvent @event) => { var statName = ComposeStatName(signal.Name); var tags = ComposeTags(@event.MessageType); DogStatsd.Increment(statName, tags: tags); }); } }); #endregion }