/// <summary> /// Writes logs to a blob /// </summary> /// <param name="configuration">Configuration reference</param> /// <param name="blobStorage">Valid blob storage reference</param> /// <param name="documentId">ID of the document to append to</param> /// <param name="format">Optional format string</param> /// <returns></returns> public static ILogConfiguration StorageAppendBlob(this IWriterConfiguration configuration, IBlobStorage blobStorage, string documentId, string format = null) { return(configuration.Custom(new BlobStorageLogWriter(blobStorage, documentId, format))); }
/// <summary> /// Initializes a new instance of the <see cref="CsvWriter"/> class. /// </summary> /// <param name="writer">The writer.</param> /// <param name="configuration">The configuration.</param> public CsvWriter(TextWriter writer, CsvConfiguration configuration) { configuration.Validate(); this.writer = writer; Configuration = configuration; context = new CsvContext(this); typeConverterCache = context.TypeConverterCache; recordManager = new Lazy <RecordManager>(() => ObjectResolver.Current.Resolve <RecordManager>(this)); comment = configuration.Comment; bufferSize = configuration.BufferSize; delimiter = configuration.Delimiter; cultureInfo = configuration.CultureInfo; dynamicPropertySort = configuration.DynamicPropertySort; escapeDelimiterString = new string(configuration.Delimiter.SelectMany(c => new[] { configuration.Escape, c }).ToArray()); escapeNewlineString = new string(configuration.NewLine.SelectMany(c => new[] { configuration.Escape, c }).ToArray()); escapeQuoteString = new string(new[] { configuration.Escape, configuration.Quote }); hasHeaderRecord = configuration.HasHeaderRecord; includePrivateMembers = configuration.IncludePrivateMembers; injectionCharacters = configuration.InjectionCharacters; injectionEscapeCharacter = configuration.InjectionEscapeCharacter; leaveOpen = configuration.LeaveOpen; mode = configuration.Mode; newLine = configuration.NewLine; quote = configuration.Quote; quoteString = configuration.Quote.ToString(); sanitizeForInjection = configuration.SanitizeForInjection; shouldQuote = configuration.ShouldQuote; trimOptions = configuration.TrimOptions; buffer = new char[bufferSize]; }
/// <summary> /// Initializes a new instance of the <see cref="CsvWriter"/> class. /// </summary> /// <param name="writer">The writer.</param> /// <param name="configuration">The configuration.</param> public CsvWriter(TextWriter writer, CsvConfiguration configuration) { this.writer = writer; Configuration = configuration; context = new CsvContext(this); typeConverterCache = context.TypeConverterCache; recordManager = new Lazy <RecordManager>(() => ObjectResolver.Current.Resolve <RecordManager>(this)); comment = configuration.Comment; bufferSize = configuration.BufferSize; delimiter = configuration.Delimiter; cultureInfo = configuration.CultureInfo; doubleQuoteString = configuration.DoubleQuoteString; dynamicPropertySort = configuration.DynamicPropertySort; hasHeaderRecord = configuration.HasHeaderRecord; includePrivateMembers = configuration.IncludePrivateMembers; injectionCharacters = configuration.InjectionCharacters; injectionEscapeCharacter = configuration.InjectionEscapeCharacter; leaveOpen = configuration.LeaveOpen; newLine = configuration.NewLine; quote = configuration.Quote; quoteString = configuration.QuoteString; sanitizeForInjection = configuration.SanitizeForInjection; shouldQuote = configuration.ShouldQuote; trimOptions = configuration.TrimOptions; buffer = new char[bufferSize]; }
/// <summary> /// Writes to Azure Table Storage /// </summary> /// <param name="configuration">Configuration object</param> /// <param name="storageAccountName">Azure Storage account name</param> /// <param name="storageAccountKey">Azure Storage account key</param> /// <param name="tableName">Name of the table to write to</param> /// <returns></returns> public static ILogConfiguration AzureTable(this IWriterConfiguration configuration, string storageAccountName, string storageAccountKey, string tableName) { return(configuration.Custom(new AzureTableLogWriter(storageAccountName, storageAccountKey, tableName))); }
public CsvWriter Create(TextWriter textWriter, bool hasHeaderRecord = true) { IWriterConfiguration writerConfiguration = CreateCsvWriterConfiguration(); writerConfiguration.HasHeaderRecord = hasHeaderRecord; return(new CsvWriter(textWriter, (CsvConfiguration)writerConfiguration)); }
public static IWriterConfiguration ApplyStandardTopcatConfiguration(IWriterConfiguration config, string delimiter) { config.Delimiter = delimiter; config.ReferenceHeaderPrefix = (memberType, memberName) => $"{memberName}."; config.TypeConverterCache.AddConverter <List <MetadataKeyword> >(new Exporter.MetadataKeywordConverter()); config.TypeConverterCache.AddConverter <List <Extent> >(new Exporter.ExtentListConverter()); return(config); }
public void Apply(IWriterConfiguration config) { config.Delimiter = "\t"; config.RegisterClassMap <MyRecordMap>(); config.RegisterClassMap <MyMetadataMap>(); config.TypeConverterCache.AddConverter <List <MetadataKeyword> >(new Exporter.MetadataKeywordConverter()); config.TypeConverterCache.AddConverter <List <Extent> >(new Exporter.ExtentListConverter()); }
/// <summary> /// Adds Azure Application Insights writer /// </summary> /// <param name="configuration">Configuration reference</param> /// <param name="instrumentationKey">Instrumentation key</param> public static ILogConfiguration AzureApplicationInsights(this IWriterConfiguration configuration, string instrumentationKey, WriterOptions options) { if (options == null) { options = new WriterOptions(); } return(configuration.Custom(new ApplicationInsightsWriter(instrumentationKey, options))); }
/// <summary> /// Adds Azure Application Insights writer /// </summary> /// <param name="configuration">Configuration reference</param> /// <param name="instrumentationKey">Instrumentation key</param> /// <param name="flushOnWrite">When true, flush will be forced on every write</param> /// <returns></returns> public static ILogConfiguration AzureApplicationInsights(this IWriterConfiguration configuration, string instrumentationKey, bool traceExceptions = true, bool flushOnWrite = false) { var options = new WriterOptions { FlushOnWrite = flushOnWrite, TraceExceptions = traceExceptions }; return(configuration.Custom(new ApplicationInsightsWriter(instrumentationKey, options))); }
/// <summary> /// Writes to Azure Append Blob /// </summary> /// <param name="configuration">Configuration object</param> /// <param name="storageAccountName">Azure Storage account name</param> /// <param name="storageAccountKey">Azure Storage account key</param> /// <param name="containerName">Azure Storage container name</param> /// <param name="blobNamePrefix">Prefix to give to files in the blob storage i.e. "myapp-"</param> /// <returns></returns> public static ILogConfiguration AzureAppendBlob(this IWriterConfiguration configuration, string storageAccountName, string storageAccountKey, string containerName, string blobNamePrefix) { return(configuration.Custom(new AzureAppendBlobLogWriter( storageAccountName, storageAccountKey, containerName, blobNamePrefix))); }
/// <summary> /// Writes events to Seq server (https://getseq.net/) /// </summary> public static ILogConfiguration Seq(this IWriterConfiguration configuration, Uri serverAddress, string apiKey) { return(configuration.Custom(new SeqWriter(serverAddress, apiKey))); }
/// <summary> /// Writes events to Seq server (https://getseq.net/) /// </summary> public static ILogConfiguration Seq(this IWriterConfiguration configuration, Uri serverAddress) { return(configuration.Custom(new SeqWriter(serverAddress, null))); }
/// <summary> /// Writes to file on disk and rolls it over every day. /// </summary> public static ILogConfiguration File(this IWriterConfiguration configuration, string fileName, string format) { return(configuration.Custom(new FileLogWriter(fileName, format))); }
/// <summary> /// Writes to posh system console i.e. with nice colours /// </summary> public static ILogConfiguration PoshConsole(this IWriterConfiguration configuration, string format, bool logProperties = true) { return(configuration.Custom(new PoshConsoleLogWriter(format, logProperties))); }
public static ILogConfiguration WindowsSpeech(this IWriterConfiguration configuration, string whatToSayOnError, bool speakErrorMessage) { return(configuration.Custom(new WindowsSpeechLogWriter(whatToSayOnError, speakErrorMessage))); }
public static ILogConfiguration StorageTables(this IWriterConfiguration configuration, ITableStorage tableStorage) { throw new NotImplementedException(); }
/// <summary> /// Adds Azure Application Insights writer /// </summary> /// <param name="configuration">Configuration reference</param> /// <param name="instrumentationKey">Instrumentation key</param> /// <param name="flushOnWrite">When true, flush will be forced on every write</param> /// <returns></returns> public static ILogConfiguration AzureApplicationInsights(this IWriterConfiguration configuration, string instrumentationKey, bool flushOnWrite = false) { return(configuration.Custom(new ApplicationInsightsWriter(instrumentationKey, flushOnWrite))); }
public static ILogConfiguration StorageMessagePublisher(this IWriterConfiguration configuration) { throw new NotImplementedException(); }
/// <summary> /// Writes to posh system console i.e. with nice colours /// </summary> public static ILogConfiguration PoshConsole(this IWriterConfiguration configuration) { return(configuration.Custom(new PoshConsoleLogWriter(null))); }
/// <summary> /// Writes to posh system console i.e. with nice colours /// </summary> public static ILogConfiguration PoshConsole(this IWriterConfiguration configuration, string format) { return(configuration.Custom(new PoshConsoleLogWriter(format))); }
/// <summary> /// Writes to .NET trace /// </summary> public static ILogConfiguration Trace(this IWriterConfiguration configuration) { return(configuration.Custom(new TraceLogWriter(null))); }
private static void SetCsvWriterConfig(IWriterConfiguration config) { config.Delimiter = "\t"; config.Comment = '#'; config.AllowComments = true; }
/// <summary> /// Writes to .NET trace /// </summary> public static ILogConfiguration Trace(this IWriterConfiguration configuration, string format) { return(configuration.Custom(new TraceLogWriter(format))); }
/// <summary> /// Integrates with Service Fabric Health Reports /// </summary> /// <param name="configuration"></param> /// <param name="context"></param> /// <returns></returns> public static ILogConfiguration AzureServiceFabricHealthReport(this IWriterConfiguration configuration, ServiceContext context) { return(configuration.Custom(new HealthReportWriter(context))); }
/// <summary> /// Writes to system console /// </summary> public static ILogConfiguration Console(this IWriterConfiguration configuration, bool logProperties = true) { return(configuration.Custom(new ConsoleLogWriter(null, logProperties))); }