7
7
using Promitor . Core . Extensions ;
8
8
using Promitor . Core . Metrics . Interfaces ;
9
9
using Promitor . Core . Metrics . Sinks ;
10
- using Promitor . Core . Serialization . Enum ;
10
+ using Promitor . Core . Scraping . Configuration . Model ;
11
11
using Promitor . Integrations . Azure . Authentication ;
12
12
using Promitor . Integrations . AzureMonitor ;
13
13
using Promitor . Integrations . AzureMonitor . Configuration ;
@@ -21,7 +21,7 @@ public class AzureMonitorClientFactory
21
21
/// <summary>
22
22
/// Provides an Azure Monitor client
23
23
/// </summary>
24
- /// <param name="cloud">Name of the Azure cloud to interact with </param>
24
+ /// <param name="azureMetadata"> Azure metadata information </param>
25
25
/// <param name="tenantId">Id of the tenant that owns the Azure subscription</param>
26
26
/// <param name="subscriptionId">Id of the Azure subscription</param>
27
27
/// <param name="metricSinkWriter">Writer to send metrics to all configured sinks</param>
@@ -31,19 +31,21 @@ public class AzureMonitorClientFactory
31
31
/// <param name="azureMonitorIntegrationConfiguration">Options for Azure Monitor integration</param>
32
32
/// <param name="azureMonitorLoggingConfiguration">Options for Azure Monitor logging</param>
33
33
/// <param name="loggerFactory">Factory to create loggers with</param>
34
- public IAzureMonitorClient CreateIfNotExists ( AzureCloud cloud , string tenantId , string subscriptionId , MetricSinkWriter metricSinkWriter , IAzureScrapingSystemMetricsPublisher azureScrapingSystemMetricsPublisher , IMemoryCache resourceMetricDefinitionMemoryCache , IConfiguration configuration , IOptions < AzureMonitorIntegrationConfiguration > azureMonitorIntegrationConfiguration , IOptions < AzureMonitorLoggingConfiguration > azureMonitorLoggingConfiguration , ILoggerFactory loggerFactory )
35
- {
34
+ public IAzureMonitorClient CreateIfNotExists ( AzureMetadata azureMetadata , string tenantId , string subscriptionId , MetricSinkWriter metricSinkWriter , IAzureScrapingSystemMetricsPublisher azureScrapingSystemMetricsPublisher , IMemoryCache resourceMetricDefinitionMemoryCache , IConfiguration configuration , IOptions < AzureMonitorIntegrationConfiguration > azureMonitorIntegrationConfiguration , IOptions < AzureMonitorLoggingConfiguration > azureMonitorLoggingConfiguration , ILoggerFactory loggerFactory )
35
+ {
36
36
if ( _azureMonitorClients . TryGetValue ( subscriptionId , out var value ) )
37
37
{
38
38
return value ;
39
39
}
40
-
41
40
var useAzureMonitorSdk = azureMonitorIntegrationConfiguration . Value . UseAzureMonitorSdk ;
42
41
IAzureMonitorClient azureMonitorClient ;
43
- if ( useAzureMonitorSdk ) {
44
- azureMonitorClient = CreateNewAzureMonitorQueryClient ( cloud , tenantId , subscriptionId , metricSinkWriter , azureScrapingSystemMetricsPublisher , resourceMetricDefinitionMemoryCache , configuration , azureMonitorIntegrationConfiguration , azureMonitorLoggingConfiguration , loggerFactory ) ;
45
- } else {
46
- azureMonitorClient = CreateNewLegacyAzureMonitorClient ( cloud . GetAzureEnvironment ( ) , tenantId , subscriptionId , metricSinkWriter , azureScrapingSystemMetricsPublisher , resourceMetricDefinitionMemoryCache , configuration , azureMonitorIntegrationConfiguration , azureMonitorLoggingConfiguration , loggerFactory ) ;
42
+ if ( useAzureMonitorSdk )
43
+ {
44
+ azureMonitorClient = CreateNewAzureMonitorQueryClient ( azureMetadata , tenantId , subscriptionId , metricSinkWriter , azureScrapingSystemMetricsPublisher , resourceMetricDefinitionMemoryCache , configuration , azureMonitorIntegrationConfiguration , azureMonitorLoggingConfiguration , loggerFactory ) ;
45
+ }
46
+ else
47
+ {
48
+ azureMonitorClient = CreateNewLegacyAzureMonitorClient ( azureMetadata . GetAzureEnvironment ( ) , tenantId , subscriptionId , metricSinkWriter , azureScrapingSystemMetricsPublisher , resourceMetricDefinitionMemoryCache , configuration , azureMonitorIntegrationConfiguration , azureMonitorLoggingConfiguration , loggerFactory ) ;
47
49
}
48
50
_azureMonitorClients . TryAdd ( subscriptionId , azureMonitorClient ) ;
49
51
@@ -57,10 +59,10 @@ private static LegacyAzureMonitorClient CreateNewLegacyAzureMonitorClient(AzureE
57
59
return azureMonitorClientLegacy ;
58
60
}
59
61
60
- private static AzureMonitorQueryClient CreateNewAzureMonitorQueryClient ( AzureCloud cloud , string tenantId , string subscriptionId , MetricSinkWriter metricSinkWriter , IAzureScrapingSystemMetricsPublisher azureScrapingSystemMetricsPublisher , IMemoryCache resourceMetricDefinitionMemoryCache , IConfiguration configuration , IOptions < AzureMonitorIntegrationConfiguration > azureMonitorIntegrationConfiguration , IOptions < AzureMonitorLoggingConfiguration > azureMonitorLoggingConfiguration , ILoggerFactory loggerFactory )
62
+ private static AzureMonitorQueryClient CreateNewAzureMonitorQueryClient ( AzureMetadata azureMetadata , string tenantId , string subscriptionId , MetricSinkWriter metricSinkWriter , IAzureScrapingSystemMetricsPublisher azureScrapingSystemMetricsPublisher , IMemoryCache resourceMetricDefinitionMemoryCache , IConfiguration configuration , IOptions < AzureMonitorIntegrationConfiguration > azureMonitorIntegrationConfiguration , IOptions < AzureMonitorLoggingConfiguration > azureMonitorLoggingConfiguration , ILoggerFactory loggerFactory )
61
63
{
62
64
var azureCredentials = AzureAuthenticationFactory . GetConfiguredAzureAuthentication ( configuration ) ;
63
- var azureMonitorQueryClient = new AzureMonitorQueryClient ( cloud , tenantId , subscriptionId , azureCredentials , metricSinkWriter , azureScrapingSystemMetricsPublisher , resourceMetricDefinitionMemoryCache , loggerFactory , azureMonitorIntegrationConfiguration , azureMonitorLoggingConfiguration ) ;
65
+ var azureMonitorQueryClient = new AzureMonitorQueryClient ( azureMetadata , tenantId , subscriptionId , azureCredentials , metricSinkWriter , azureScrapingSystemMetricsPublisher , resourceMetricDefinitionMemoryCache , loggerFactory , azureMonitorIntegrationConfiguration , azureMonitorLoggingConfiguration ) ;
64
66
return azureMonitorQueryClient ;
65
67
}
66
68
}
0 commit comments