/// <summary> /// Initializes the target. Can be used by inheriting classes /// to initialize logging. /// </summary> protected override void InitializeTarget() { base.InitializeTarget(); string connectionString = string.Empty; string serviceUri = string.Empty; string tenantIdentity = string.Empty; string resourceIdentity = string.Empty; Dictionary <string, string> queueMetadata = null; var defaultLogEvent = LogEventInfo.CreateNullEvent(); try { connectionString = ConnectionString?.Render(defaultLogEvent); if (string.IsNullOrEmpty(connectionString)) { serviceUri = ServiceUri?.Render(defaultLogEvent); tenantIdentity = TenantIdentity?.Render(defaultLogEvent); resourceIdentity = ResourceIdentity?.Render(defaultLogEvent); } if (QueueMetadata?.Count > 0) { queueMetadata = new Dictionary <string, string>(); foreach (var metadata in QueueMetadata) { if (string.IsNullOrWhiteSpace(metadata.Name)) { continue; } var metadataValue = metadata.Layout?.Render(defaultLogEvent); if (string.IsNullOrEmpty(metadataValue)) { continue; } queueMetadata[metadata.Name.Trim()] = metadataValue; } } _cloudQueueService.Connect(connectionString, serviceUri, tenantIdentity, resourceIdentity, queueMetadata); InternalLogger.Trace("AzureQueueStorageTarget - Initialized"); } catch (Exception ex) { if (string.IsNullOrEmpty(connectionString) && !string.IsNullOrEmpty(serviceUri)) { InternalLogger.Error(ex, "AzureQueueStorageTarget(Name={0}): Failed to create QueueClient with ServiceUri={1}.", Name, serviceUri); } else { InternalLogger.Error(ex, "AzureQueueStorageTarget(Name={0}): Failed to create QueueClient with connectionString={1}.", Name, connectionString); } throw; } }
/// <summary> /// Initializes the target. Can be used by inheriting classes /// to initialize logging. /// </summary> protected override void InitializeTarget() { base.InitializeTarget(); _machineName = GetMachineName(); string connectionString = string.Empty; string serviceUri = string.Empty; string tenantIdentity = string.Empty; string resourceIdentity = string.Empty; string clientIdentity = string.Empty; string accountName = string.Empty; string accessKey = string.Empty; var defaultLogEvent = LogEventInfo.CreateNullEvent(); try { connectionString = ConnectionString?.Render(defaultLogEvent); if (string.IsNullOrEmpty(connectionString)) { serviceUri = ServiceUri?.Render(defaultLogEvent); tenantIdentity = TenantIdentity?.Render(defaultLogEvent); resourceIdentity = ResourceIdentity?.Render(defaultLogEvent); clientIdentity = ClientIdentity?.Render(defaultLogEvent); accountName = AccountName?.Render(defaultLogEvent); accessKey = AccessKey?.Render(defaultLogEvent); } _cloudTableService.Connect(connectionString, serviceUri, tenantIdentity, resourceIdentity, clientIdentity, accountName, accessKey); InternalLogger.Trace("AzureDataTablesTarget(Name={0}): Initialized", Name); } catch (Exception ex) { InternalLogger.Error(ex, "AzureDataTablesTarget(Name={0}): Failed to create TableClient with connectionString={1}.", Name, connectionString); throw; } }