/// <summary> /// Initializes a new instance of the <see cref="BlobStorageTelemetryWriterConfiguration"/> class. /// </summary> /// <param name="containerShardStrategy">The container shard strategy.</param> /// <param name="blobShardStrategy">The BLOB shard strategy.</param> public BlobStorageTelemetryWriterConfiguration(IShardStrategy containerShardStrategy = null, IShardStrategy blobShardStrategy = null) { if (null == containerShardStrategy) { containerShardStrategy = new DefaultContainerShardStrategy(); } if (null == blobShardStrategy) { blobShardStrategy = new ShardPerDayStrategy(); } SetField.NotNull(out _containerShardStrategy, nameof(containerShardStrategy), containerShardStrategy); SetField.NotNull(out _blobShardStrategy, nameof(blobShardStrategy), blobShardStrategy); try { StorageConnectionString = CloudConfigurationManager.GetSetting("StorageConnectionString"); } catch (Exception) { //because this is an attempt to read from a well-known location it may fail // so swallow all errors vs. throwing from the ctor } }
/// <summary> /// Initializes a new instance of the <see cref="TextFileTelemetryWriterConfiguration"/> class. /// </summary> /// <param name="fileShardStrategy">The file shard strategy.</param> public TextFileTelemetryWriterConfiguration(IShardStrategy fileShardStrategy = null) { if (null == fileShardStrategy) { fileShardStrategy = new ShardPerDayStrategy(); } SetField.NotNull(out _fileShardStrategy, nameof(fileShardStrategy), fileShardStrategy); Filename = BuildDefaultFilename(); }