Skip to content

Commit 401f162

Browse files
committed
Fix EventCounter descriptors
1 parent 9120678 commit 401f162

File tree

2 files changed

+54
-9
lines changed

2 files changed

+54
-9
lines changed

src/Tools/dotnet-monitor/CollectionRules/Triggers/EventCounterTriggerFactory.cs

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,4 +126,49 @@ public bool TryBindOptions(IConfigurationSection settingsSection, out object? se
126126
return true;
127127
}
128128
}
129+
130+
internal sealed class CPUUsageTriggerDescriptor : ICollectionRuleTriggerDescriptor
131+
{
132+
public Type FactoryType => typeof(EventCounterTriggerFactory);
133+
public Type? OptionsType => typeof(CPUUsageOptions);
134+
public string TriggerName => KnownCollectionRuleTriggers.CPUUsage;
135+
136+
public bool TryBindOptions(IConfigurationSection settingsSection, out object? settings)
137+
{
138+
var options = new CPUUsageOptions();
139+
settingsSection.Bind(options);
140+
settings = options;
141+
return true;
142+
}
143+
}
144+
145+
internal sealed class GCHeapSizeTriggerDescriptor : ICollectionRuleTriggerDescriptor
146+
{
147+
public Type FactoryType => typeof(EventCounterTriggerFactory);
148+
public Type? OptionsType => typeof(GCHeapSizeOptions);
149+
public string TriggerName => KnownCollectionRuleTriggers.GCHeapSize;
150+
151+
public bool TryBindOptions(IConfigurationSection settingsSection, out object? settings)
152+
{
153+
var options = new GCHeapSizeOptions();
154+
settingsSection.Bind(options);
155+
settings = options;
156+
return true;
157+
}
158+
}
159+
160+
internal sealed class ThreadpoolQueueLengthTriggerDescriptor : ICollectionRuleTriggerDescriptor
161+
{
162+
public Type FactoryType => typeof(EventCounterTriggerFactory);
163+
public Type? OptionsType => typeof(ThreadpoolQueueLengthOptions);
164+
public string TriggerName => KnownCollectionRuleTriggers.ThreadpoolQueueLength;
165+
166+
public bool TryBindOptions(IConfigurationSection settingsSection, out object? settings)
167+
{
168+
var options = new ThreadpoolQueueLengthOptions();
169+
settingsSection.Bind(options);
170+
settings = options;
171+
return true;
172+
}
173+
}
129174
}

src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -152,15 +152,15 @@ public static IServiceCollection ConfigureCollectionRules(this IServiceCollectio
152152
services.RegisterCollectionRuleAction<SetEnvironmentVariableActionFactory, SetEnvironmentVariableOptions, SetEnvironmentVariableActionDescriptor>();
153153
services.RegisterCollectionRuleAction<GetEnvironmentVariableActionFactory, GetEnvironmentVariableOptions, GetEnvironmentVariableActionDescriptor>();
154154

155-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.AspNetRequestCountTriggerFactory, AspNetRequestCountOptions, CollectionRules.Triggers.AspNetRequestCountTriggerDescriptor>();
156-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.AspNetRequestDurationTriggerFactory, AspNetRequestDurationOptions, CollectionRules.Triggers.AspNetRequestDurationTriggerDescriptor>();
157-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.AspNetResponseStatusTriggerFactory, AspNetResponseStatusOptions, CollectionRules.Triggers.AspNetResponseStatusTriggerDescriptor>();
158-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, EventCounterOptions, CollectionRules.Triggers.EventCounterTriggerDescriptor>();
159-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, CPUUsageOptions, CollectionRules.Triggers.EventCounterTriggerDescriptor>();
160-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, GCHeapSizeOptions, CollectionRules.Triggers.EventCounterTriggerDescriptor>();
161-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, ThreadpoolQueueLengthOptions, CollectionRules.Triggers.EventCounterTriggerDescriptor>();
162-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.StartupTriggerFactory, CollectionRules.Triggers.StartupTriggerDescriptor>();
163-
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventMeterTriggerFactory, EventMeterOptions, CollectionRules.Triggers.EventMeterTriggerDescriptor>();
155+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.AspNetRequestCountTriggerFactory, AspNetRequestCountOptions, AspNetRequestCountTriggerDescriptor>();
156+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.AspNetRequestDurationTriggerFactory, AspNetRequestDurationOptions, AspNetRequestDurationTriggerDescriptor>();
157+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.AspNetResponseStatusTriggerFactory, AspNetResponseStatusOptions, AspNetResponseStatusTriggerDescriptor>();
158+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, EventCounterOptions, EventCounterTriggerDescriptor>();
159+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, CPUUsageOptions, CPUUsageTriggerDescriptor>();
160+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, GCHeapSizeOptions, GCHeapSizeTriggerDescriptor>();
161+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventCounterTriggerFactory, ThreadpoolQueueLengthOptions, ThreadpoolQueueLengthTriggerDescriptor>();
162+
services.RegisterCollectionRuleTrigger<StartupTriggerFactory, StartupTriggerDescriptor>();
163+
services.RegisterCollectionRuleTrigger<CollectionRules.Triggers.EventMeterTriggerFactory, EventMeterOptions, EventMeterTriggerDescriptor>();
164164

165165
services.AddSingleton<EventPipeTriggerFactory>();
166166
services.AddSingleton<ITraceEventTriggerFactory<EventCounterTriggerSettings>, Monitoring.EventPipe.Triggers.EventCounter.EventCounterTriggerFactory>();

0 commit comments

Comments
 (0)