private void ConfigureTasks(Alex.Alex alex) { MetricTasks.Add(new SystemPerformanceCountersTask()); MetricTasks.Add(new ProfilerMetrics(alex)); MetricTasks.Add(new GPUMetricsTask()); MetricTasks.Add(new WorldMetrics(alex)); }
public ProfilerMetrics(Alex.Alex alex) { Alex = alex; ProfilerService = alex.Services.GetService <ProfilerService>(); ProfilerService.OnProfilerStarted += ProfilerServiceOnOnProfilerStarted; ProfilerService.OnProfilerStopped += ProfilerServiceOnOnProfilerStopped; }
public ProfilerMetrics(Alex.Alex alex) { Alex = alex; ProfilerService = alex.Services.GetService <ProfilerService>(); ProfilerService.OnProfilerStarted += ProfilerServiceOnOnProfilerStarted; ProfilerService.OnProfilerStopped += ProfilerServiceOnOnProfilerStopped; ProfilerService.OnCounter += ProfilerServiceOnOnCounter; ProfilerService.OnGenericProfilingEvent += ProfilerServiceOnOnGenericProfilingEvent; }
public override void Disabled(Alex.Alex alex) { if (!_isRunning) { return; } _isRunning = !_isRunning; _metricTimer.Change(Timeout.Infinite, Timeout.Infinite); _threadCancellationTokenSource.Cancel(); //_thread.Abort(); // _thread.Join(); Log.Info($"Metrics plugin disabled!"); }
public override void Enabled(Alex.Alex alex) { if (_isRunning) { return; } _isRunning = true; ConfigureTasks(alex); foreach (var task in MetricTasks.ToArray()) { task.Configure(Metrics); } _threadCancellationTokenSource = new CancellationTokenSource(); _metricTimer = new Timer(async state => await Run(), null, 0, 1000); Log.Info($"Metrics plugin enabled!"); }
public WorldMetrics(Alex.Alex alex) { Alex = alex; }