public static void AddCsvInput <T>( this IPlaybackConfiguration playback, Func <Record, T> transformation, Func <Record, DateTimeOffset> timestampSelector, params string[] files) { if (playback == null) { throw new ArgumentNullException(nameof(playback)); } if (transformation == null) { throw new ArgumentNullException(nameof(transformation)); } if (timestampSelector == null) { throw new ArgumentNullException(nameof(timestampSelector)); } if (files == null) { throw new ArgumentNullException(nameof(files)); } AddCsvInput(playback, ',', 0, transformation, timestampSelector, files); }
public static void AddCsvInput <T>( this IPlaybackConfiguration playback, char delimiter, int numberRecordsToSkip, Func <Record, T> transformation, Func <Record, DateTimeOffset> timestampSelector, params string[] files) { if (playback == null) { throw new ArgumentNullException(nameof(playback)); } if (transformation == null) { throw new ArgumentNullException(nameof(transformation)); } if (timestampSelector == null) { throw new ArgumentNullException(nameof(timestampSelector)); } if (files == null) { throw new ArgumentNullException(nameof(files)); } playback.AddInput( () => new CsvObservable(delimiter, numberRecordsToSkip) .FromFiles(files) .Select(item => new Timestamped <T>(transformation(item), timestampSelector(item))), typeof(PartitionableTypeMap <T>)); }
public static void AddPerfCounterProbe(this IPlaybackConfiguration playback, TimeSpan samplingRate, params string[] counterPaths) { playback.AddInput( () => PerfCounterObservable.FromRealTime(samplingRate, counterPaths), typeof(PerfCounterPartitionTypeMap), typeof(PerfCounterTypeMap)); }
public static void AddLogFiles(this IPlaybackConfiguration playback, params string[] files) { playback.AddInput( () => EvtxEnumerable.FromFiles(files).ToObservable(ThreadPoolScheduler.Instance), typeof(EvtxManifestTypeMap), typeof(EvtxTypeMap)); }
public static void AddPerfCounterTraces(this IPlaybackConfiguration playback, params string[] files) { playback.AddInput( () => PerfCounterObservable.FromFile(files[0]), typeof(PerfCounterPartitionTypeMap), typeof(PerfCounterTypeMap)); }
public void AddFiles(IPlaybackConfiguration playback, string[] files) { var filesByExtension = new Dictionary <string, List <string> >(); foreach (string f in files) { string extension = Path.GetExtension(f).ToLowerInvariant(); List <string> sameExtension; if (!filesByExtension.TryGetValue(extension, out sameExtension)) { sameExtension = new List <string>(); filesByExtension.Add(extension, sameExtension); } sameExtension.Add(f); } foreach (string ext in filesByExtension.Keys) { MethodInfo addMethod = (from mi in _addFiles where mi.GetCustomAttribute <FileParserAttribute>().Extensions.Contains(ext) select mi).FirstOrDefault(); addMethod.Invoke(null, new object[] { playback, filesByExtension[ext].ToArray() }); } }
public void AddSession(IPlaybackConfiguration playback, string session) { foreach (MethodInfo addMethod in _addSessions) { addMethod.Invoke(null, new object[] { playback, session }); } }
public static void AddEtlFileSequence(this IPlaybackConfiguration playback, params string[] files) { playback.AddInput( () => EtwObservable.FromSequentialFiles(files), typeof(EtwManifestTypeMap), typeof(EtwClassicTypeMap), typeof(EtwTypeMap)); }
public static void AddRealTimeSession(this IPlaybackConfiguration playback, string session) { playback.AddInput( () => EtwObservable.FromSession(session), typeof(EtwManifestTypeMap), typeof(EtwClassicTypeMap), typeof(EtwTypeMap)); }
public static void AddBondEtlFiles(this IPlaybackConfiguration playback, params string[] files) { if (playback == null) { throw new ArgumentNullException("playback"); } if (files == null) { throw new ArgumentNullException("files"); } playback.AddInput(() => BinaryEtwObservable.FromFiles(files), typeof(GeneralPartitionableTypeMap)); }
public static void AddSequentialBondEtlFiles(this IPlaybackConfiguration playback, params string[] files) { if (playback == null) { throw new ArgumentNullException("playback"); } if (files == null) { throw new ArgumentNullException("files"); } playback.AddInput(() => BinaryEtwObservable.FromSequentialFiles(files), typeof(BondJsonEnvelopeTypeMap)); }
/// <summary> /// Saves the <paramref name="playbackConfig"/> to the file. /// </summary> /// <param name="playbackConfig">The playback configuration that should be saved.</param> public void SavePlaybackConfiguration(IPlaybackConfiguration playbackConfig) { if (playbackConfig == null) { throw new ArgumentNullException(nameof(playbackConfig)); } var serializedPlaybackConfig = Serialize(playbackConfig); // Write the serialized playback config to the specified file. var file = new JsonEntityFile <SerializedPlaybackConfig>(playbackConfig.FilePath, _fileSystem); file.WriteEntity(serializedPlaybackConfig); }
/// <summary> /// Method for adding input sequence that contains .NET objects to the playbackConfiguration /// </summary> /// <param name="playbackConfiguration">The playback instance.</param> /// <param name="source">The input sequence.</param> public static void AddInput(this IPlaybackConfiguration playbackConfiguration, IEnumerable <Timestamped <object> > source) { if (playbackConfiguration == null) { throw new ArgumentNullException("playbackConfiguration"); } if (source == null) { throw new ArgumentNullException("source"); } playbackConfiguration .AddInput( () => source.ToObservable(Scheduler.Default), typeof(PartitionableTypeMap)); }
public static void AddCsvFiles( this IPlaybackConfiguration playback, params string[] files) { if (playback == null) { throw new ArgumentNullException("playback"); } if (files == null) { throw new ArgumentNullException("files"); } playback.AddInput( () => new CsvObservable(',', 1).FromFiles(files), typeof(CsvRecordTypeMap)); }
internal static void AddCsvFiles <T>( this IPlaybackConfiguration playback, CsvObservable observable, params string[] files) where T : SingleTypeMap <string[]> { if (playback == null) { throw new ArgumentNullException("playback"); } if (files == null) { throw new ArgumentNullException("files"); } playback.AddInput( () => observable.FromFiles(files), typeof(T)); }
public static void AddCsvFiles <T>( this IPlaybackConfiguration playback, char delimiter, int numberRecordsToSkip, params string[] files) where T : SingleTypeMap <string[]> { if (playback == null) { throw new ArgumentNullException("playback"); } if (files == null) { throw new ArgumentNullException("files"); } playback.AddCsvFiles <T>( new CsvObservable(delimiter, numberRecordsToSkip), files); }
public static void AddUlsFiles(this IPlaybackConfiguration playback, params string[] ulsFiles) { playback.AddInput( () => UlsObservable.FromFiles(ulsFiles), typeof(UlsTypeMap)); }
public static void AddXelFiles(this IPlaybackConfiguration playback, params string[] xeFiles) { playback.AddInput( () => XeObservable.FromFiles(xeFiles), typeof(XeTypeMap)); }
public static IObservable <PerformanceSample> GetPerformanceCounter(this IPlaybackConfiguration playback, string counterPath) { return(null); }
public static void AddXeTarget <TTarget>(this IPlaybackConfiguration playback) where TTarget : XeSubject, new() { playback.AddInput( () => XeObservable.FromTarget <TTarget>(), typeof(XeTypeMap)); }