Есть ли способ уменьшить время чтения blg-файла (счетчика производительности)?
Я использую Tx.Windows
пакет nuget для чтения счетчика производительности blg
файл.
https://github.com/Microsoft/Tx
С файлом небольшого размера, результат очень немедленный для приведенного ниже кода, но с ростом размера моего файла время, затрачиваемое на чтение, также увеличивается. При большом размере файла (скажем, 500 МБ) время чтения файла очень велико.
Есть ли способ уменьшить время чтения файла?
using System;
using System.Linq;
using System.Reactive.Linq;
using Tx.Windows;
namespace ConsoleApp3
{
class Program
{
static void Main(string[] args)
{
var observable = PerfCounterObservable.FromFile(@"C:\Files\test.blg");
var grouped = from a in observable
group a by new { a.Machine, a.Instance, a.Timestamp } into groups
from g in groups.ToArray()
select new
{
groups.Key.Machine,
groups.Key.Instance,
groups.Key.Timestamp,
Counters = g
};
var all = grouped.ToEnumerable().ToArray();
Console.ReadLine();
}
}
}
Пример файла blg на Microsoft Tx
местоположение github,
https://github.com/Microsoft/Tx/blob/master/Traces/BasicPerfCounters.blg
а вот тестовый код,
https://github.com/Microsoft/Tx/blob/master/Test/Tx.Windows.Tests/PerfCounterTest.cs