diff --git a/sdk/monitor/Azure.Monitor.Query/README.md b/sdk/monitor/Azure.Monitor.Query/README.md index 645057a162a0..8a3c4fb2b4b0 100644 --- a/sdk/monitor/Azure.Monitor.Query/README.md +++ b/sdk/monitor/Azure.Monitor.Query/README.md @@ -65,14 +65,12 @@ All client instance methods are thread-safe and independent of each other ([guid You can query logs using the `LogsQueryClient.QueryAsync` method. The result is returned as a table with a collection of rows: ```C# Snippet:QueryLogsAsTable -var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; - -var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); +var client = new LogsQueryClient(new DefaultAzureCredential()); Response response = await client.QueryAsync( workspaceId, "AzureActivity | top 10 by TimeGenerated", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); LogsQueryResultTable table = response.Value.PrimaryTable; @@ -102,7 +100,7 @@ string workspaceId = ""; Response> response = await client.QueryAsync( workspaceId, "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); foreach (var logEntryModel in response.Value) { @@ -115,16 +113,15 @@ foreach (var logEntryModel in response.Value) If your query returns a single column (or a single value) of a primitive type, use the `LogsQueryClient.QueryAsync` overload to deserialize it: ```C# Snippet:QueryLogsAsPrimitive -var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; -var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); +var client = new LogsQueryClient(new DefaultAzureCredential()); // Query TOP 10 resource groups by event count Response> response = await client.QueryAsync( workspaceId, "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count | project ResourceGroup", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); foreach (var resourceGroup in response.Value) { @@ -137,10 +134,9 @@ foreach (var resourceGroup in response.Value) You can execute multiple queries in a single request using the `LogsQueryClient.CreateBatchQuery` method: ```C# Snippet:BatchQuery -var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; -var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); +var client = new LogsQueryClient(new DefaultAzureCredential()); // Query TOP 10 resource groups by event count // And total event count @@ -149,11 +145,11 @@ var batch = new LogsBatchQuery(); string countQueryId = batch.AddQuery( workspaceId, "AzureActivity | count", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); string topQueryId = batch.AddQuery( workspaceId, "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); Response response = await client.QueryBatchAsync(batch); @@ -172,14 +168,13 @@ foreach (var logEntryModel in topEntries) You can also dynamically inspect the list of columns. The following example prints the query result as a table: ```C# Snippet:QueryLogsPrintTable -var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; -var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); +var client = new LogsQueryClient(new DefaultAzureCredential()); Response response = await client.QueryAsync( workspaceId, "AzureActivity | top 10 by TimeGenerated", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); LogsQueryResultTable table = response.Value.PrimaryTable; @@ -207,16 +202,15 @@ foreach (var row in table.Rows) Some Logs queries take longer than 3 minutes to execute. The default server timeout is 3 minutes. You can increase the server timeout to a maximum of 10 minutes. In the following example, the `LogsQueryOptions` object's `ServerTimeout` property is used to set the server timeout to 10 minutes: ```C# Snippet:QueryLogsWithTimeout -var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; -var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); +var client = new LogsQueryClient(new DefaultAzureCredential()); // Query TOP 10 resource groups by event count Response> response = await client.QueryAsync( workspaceId, "AzureActivity | summarize count()", - TimeSpan.FromDays(1), + new DateTimeRange(TimeSpan.FromDays(1)), options: new LogsQueryOptions { ServerTimeout = TimeSpan.FromMinutes(10) @@ -232,12 +226,17 @@ foreach (var resourceGroup in response.Value) You can query metrics using the `MetricsQueryClient.QueryAsync` method. For every requested metric, a set of aggregated values is returned inside the `TimeSeries` collection. +A resource ID is required to query metrics. To find the resource ID: + +1. Navigate to your resource's page in the Azure portal. +2. From the **Overview** blade, select the **JSON View** link. +3. In the resulting JSON, copy the value of the `id` property. + ```C# Snippet:QueryMetrics -var endpoint = new Uri("https://management.azure.com"); string resourceId = "/subscriptions//resourceGroups//providers/Microsoft.OperationalInsights/workspaces/"; -var metricsClient = new MetricsQueryClient(endpoint, new DefaultAzureCredential()); +var metricsClient = new MetricsQueryClient(new DefaultAzureCredential()); Response results = await metricsClient.QueryAsync( resourceId, @@ -268,15 +267,14 @@ When you interact with the Azure Monitor Query client library using the .NET SDK For example, if you submit an invalid query, an HTTP 400 error is returned, indicating "Bad Request". ```C# Snippet:BadRequest -var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; -var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); +var client = new LogsQueryClient(new DefaultAzureCredential()); try { await client.QueryAsync( - workspaceId, "My Not So Valid Query", TimeSpan.FromDays(1)); + workspaceId, "My Not So Valid Query", new DateTimeRange(TimeSpan.FromDays(1))); } catch (Exception e) { diff --git a/sdk/monitor/Azure.Monitor.Query/api/Azure.Monitor.Query.netstandard2.0.cs b/sdk/monitor/Azure.Monitor.Query/api/Azure.Monitor.Query.netstandard2.0.cs index 33ddd711c0aa..3d94a1167d2d 100644 --- a/sdk/monitor/Azure.Monitor.Query/api/Azure.Monitor.Query.netstandard2.0.cs +++ b/sdk/monitor/Azure.Monitor.Query/api/Azure.Monitor.Query.netstandard2.0.cs @@ -40,8 +40,9 @@ public LogsQueryOptions() { } public partial class MetricsQueryClient { protected MetricsQueryClient() { } - public MetricsQueryClient(System.Uri endpoint, Azure.Core.TokenCredential credential) { } - public MetricsQueryClient(System.Uri endpoint, Azure.Core.TokenCredential credential, Azure.Monitor.Query.MetricsQueryClientOptions options) { } + public MetricsQueryClient(Azure.Core.TokenCredential credential) { } + public MetricsQueryClient(Azure.Core.TokenCredential credential, Azure.Monitor.Query.MetricsQueryClientOptions options) { } + public MetricsQueryClient(System.Uri endpoint, Azure.Core.TokenCredential credential, Azure.Monitor.Query.MetricsQueryClientOptions options = null) { } public virtual Azure.Response> GetMetricNamespaces(string resourceId, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } public virtual System.Threading.Tasks.Task>> GetMetricNamespacesAsync(string resourceId, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } public virtual Azure.Response> GetMetrics(string resourceId, string metricsNamespace, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; } diff --git a/sdk/monitor/Azure.Monitor.Query/src/Azure.Monitor.Query.csproj b/sdk/monitor/Azure.Monitor.Query/src/Azure.Monitor.Query.csproj index a03e29c8492c..5925eea8a79b 100644 --- a/sdk/monitor/Azure.Monitor.Query/src/Azure.Monitor.Query.csproj +++ b/sdk/monitor/Azure.Monitor.Query/src/Azure.Monitor.Query.csproj @@ -10,12 +10,8 @@ - - - + + diff --git a/sdk/monitor/Azure.Monitor.Query/src/LogsQueryClient.cs b/sdk/monitor/Azure.Monitor.Query/src/LogsQueryClient.cs index c08a422c8405..5687051f9534 100644 --- a/sdk/monitor/Azure.Monitor.Query/src/LogsQueryClient.cs +++ b/sdk/monitor/Azure.Monitor.Query/src/LogsQueryClient.cs @@ -27,6 +27,9 @@ public class LogsQueryClient /// /// Initializes a new instance of . Uses the default 'https://api.loganalytics.io' endpoint. + /// + /// var client = new LogsQueryClient(new DefaultAzureCredential()); + /// /// /// The instance to use for authentication. public LogsQueryClient(TokenCredential credential) : this(credential, null) @@ -86,7 +89,7 @@ protected LogsQueryClient() /// Response<IReadOnlyList<MyLogEntryModel>> response = await client.QueryAsync<MyLogEntryModel>( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// /// Example of querying a primitive: @@ -94,7 +97,7 @@ protected LogsQueryClient() /// Response<IReadOnlyList<string>> response = await client.QueryAsync<string>( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count | project ResourceGroup", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// /// The workspace id to include in the query (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). @@ -118,7 +121,7 @@ public virtual Response> Query(string workspaceId, string qu /// Response<IReadOnlyList<MyLogEntryModel>> response = await client.QueryAsync<MyLogEntryModel>( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// /// Example of querying a primitive: @@ -126,7 +129,7 @@ public virtual Response> Query(string workspaceId, string qu /// Response<IReadOnlyList<string>> response = await client.QueryAsync<string>( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count | project ResourceGroup", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// /// The workspace id to include in the query (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). @@ -193,10 +196,9 @@ public virtual async Task> QueryAsync(string workspace /// /// Submits the batch query. Use the to compose a batch query. /// - /// var endpoint = new Uri("https://api.loganalytics.io"); /// string workspaceId = "<workspace_id>"; /// - /// var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + /// var client = new LogsQueryClient(new DefaultAzureCredential()); /// /// // Query TOP 10 resource groups by event count /// // And total event count @@ -205,11 +207,11 @@ public virtual async Task> QueryAsync(string workspace /// string countQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// string topQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// Response<LogsBatchQueryResults> response = await client.QueryBatchAsync(batch); /// @@ -247,10 +249,9 @@ public virtual Response QueryBatch(LogsBatchQuery batch, /// /// Submits the batch query. Use the to compose a batch query. /// - /// var endpoint = new Uri("https://api.loganalytics.io"); /// string workspaceId = "<workspace_id>"; /// - /// var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + /// var client = new LogsQueryClient(new DefaultAzureCredential()); /// /// // Query TOP 10 resource groups by event count /// // And total event count @@ -259,11 +260,11 @@ public virtual Response QueryBatch(LogsBatchQuery batch, /// string countQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// string topQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// Response<LogsBatchQueryResults> response = await client.QueryBatchAsync(batch); /// diff --git a/sdk/monitor/Azure.Monitor.Query/src/MetricsQueryClient.cs b/sdk/monitor/Azure.Monitor.Query/src/MetricsQueryClient.cs index 5d20aaa8e93e..3295e32f02d5 100644 --- a/sdk/monitor/Azure.Monitor.Query/src/MetricsQueryClient.cs +++ b/sdk/monitor/Azure.Monitor.Query/src/MetricsQueryClient.cs @@ -16,17 +16,30 @@ namespace Azure.Monitor.Query /// public class MetricsQueryClient { + private static readonly Uri _defaultEndpoint = new Uri("https://management.azure.com"); + private readonly MetricDefinitionsRestClient _metricDefinitionsClient; private readonly MetricsRestClient _metricsRestClient; private readonly MetricNamespacesRestClient _namespacesRestClient; private readonly ClientDiagnostics _clientDiagnostics; /// - /// Initializes a new instance of . + /// Initializes a new instance of . Uses the default 'https://management.azure.com' endpoint. + /// + /// var metricsClient = new MetricsQueryClient(new DefaultAzureCredential()); + /// + /// + /// The instance to use for authentication. + public MetricsQueryClient(TokenCredential credential) : this(credential, null) + { + } + + /// + /// Initializes a new instance of . Uses the default 'https://management.azure.com' endpoint. /// - /// The resource manager service endpoint to use. For example, https://management.azure.com/ for public cloud. /// The instance to use for authentication. - public MetricsQueryClient(Uri endpoint, TokenCredential credential) : this(endpoint, credential, null) + /// The instance to as client configuration. + public MetricsQueryClient(TokenCredential credential, MetricsQueryClientOptions options) : this(_defaultEndpoint, credential, options) { } @@ -36,7 +49,7 @@ public MetricsQueryClient(Uri endpoint, TokenCredential credential) : this(endpo /// The resource manager service endpoint to use. For example https://management.azure.com/ for public cloud. /// The instance to use for authentication. /// The instance to as client configuration. - public MetricsQueryClient(Uri endpoint, TokenCredential credential, MetricsQueryClientOptions options) + public MetricsQueryClient(Uri endpoint, TokenCredential credential, MetricsQueryClientOptions options = null) { Argument.AssertNotNull(credential, nameof(credential)); @@ -60,11 +73,10 @@ protected MetricsQueryClient() /// /// Queries metrics for a resource. /// - /// var endpoint = new Uri("https://management.azure.com"); /// string resourceId = /// "/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.OperationalInsights/workspaces/<workspace_name>"; /// - /// var metricsClient = new MetricsQueryClient(endpoint, new DefaultAzureCredential()); + /// var metricsClient = new MetricsQueryClient(new DefaultAzureCredential()); /// /// Response<MetricQueryResult> results = await metricsClient.QueryAsync( /// resourceId, @@ -119,11 +131,10 @@ public virtual Response Query(string resourceId, IEnumerable< /// /// Queries metrics for a resource. /// - /// var endpoint = new Uri("https://management.azure.com"); /// string resourceId = /// "/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.OperationalInsights/workspaces/<workspace_name>"; /// - /// var metricsClient = new MetricsQueryClient(endpoint, new DefaultAzureCredential()); + /// var metricsClient = new MetricsQueryClient(new DefaultAzureCredential()); /// /// Response<MetricQueryResult> results = await metricsClient.QueryAsync( /// resourceId, diff --git a/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQuery.cs b/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQuery.cs index 5d51248f510c..c6fc996d6594 100644 --- a/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQuery.cs +++ b/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQuery.cs @@ -29,11 +29,11 @@ public LogsBatchQuery() /// string countQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// string topQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// Response<LogsBatchQueryResults> response = await client.QueryBatchAsync(batch); /// diff --git a/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQueryResults.cs b/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQueryResults.cs index 5041fdcc4c94..cf28ebe15789 100644 --- a/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQueryResults.cs +++ b/sdk/monitor/Azure.Monitor.Query/src/Models/LogsBatchQueryResults.cs @@ -27,11 +27,11 @@ public partial class LogsBatchQueryResults /// string countQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// string topQueryId = batch.AddQuery( /// workspaceId, /// "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - /// TimeSpan.FromDays(1)); + /// new DateTimeRange(TimeSpan.FromDays(1))); /// /// Response<LogsBatchQueryResults> response = await client.QueryBatchAsync(batch); /// diff --git a/sdk/monitor/Azure.Monitor.Query/tests/LogsQueryClientSamples.cs b/sdk/monitor/Azure.Monitor.Query/tests/LogsQueryClientSamples.cs index 148d51b7cee0..52d3731e6510 100644 --- a/sdk/monitor/Azure.Monitor.Query/tests/LogsQueryClientSamples.cs +++ b/sdk/monitor/Azure.Monitor.Query/tests/LogsQueryClientSamples.cs @@ -5,6 +5,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using Azure.Core; using Azure.Core.TestFramework; using Azure.Monitor.Query.Models; using NUnit.Framework; @@ -18,18 +19,17 @@ public async Task QueryLogsAsTable() { #region Snippet:QueryLogsAsTable #if SNIPPET - var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string workspaceId = TestEnvironment.WorkspaceId; #endif - - var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + #region Snippet:CreateLogsClient + var client = new LogsQueryClient(new DefaultAzureCredential()); + #endregion Response response = await client.QueryAsync( workspaceId, "AzureActivity | top 10 by TimeGenerated", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); LogsQueryResultTable table = response.Value.PrimaryTable; @@ -47,18 +47,16 @@ public async Task QueryLogsAsTablePrintAll() #region Snippet:QueryLogsPrintTable #if SNIPPET - var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string workspaceId = TestEnvironment.WorkspaceId; #endif - var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + var client = new LogsQueryClient(new DefaultAzureCredential()); Response response = await client.QueryAsync( workspaceId, "AzureActivity | top 10 by TimeGenerated", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); LogsQueryResultTable table = response.Value.PrimaryTable; @@ -89,21 +87,19 @@ public async Task QueryLogsAsPrimitive() #region Snippet:QueryLogsAsPrimitive #if SNIPPET - var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string workspaceId = TestEnvironment.WorkspaceId; #endif - var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + var client = new LogsQueryClient(new DefaultAzureCredential()); // Query TOP 10 resource groups by event count #region Snippet:QueryLogsAsPrimitiveCall Response> response = await client.QueryAsync( workspaceId, "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count | project ResourceGroup", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); #endregion foreach (var resourceGroup in response.Value) @@ -131,7 +127,7 @@ public async Task QueryLogsAsModels() Response> response = await client.QueryAsync( workspaceId, "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); #endregion foreach (var logEntryModel in response.Value) @@ -148,14 +144,12 @@ public async Task BatchQuery() #region Snippet:BatchQuery #if SNIPPET - var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string workspaceId = TestEnvironment.WorkspaceId; #endif - var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + var client = new LogsQueryClient(new DefaultAzureCredential()); // Query TOP 10 resource groups by event count // And total event count @@ -165,11 +159,11 @@ public async Task BatchQuery() string countQueryId = batch.AddQuery( workspaceId, "AzureActivity | count", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); string topQueryId = batch.AddQuery( workspaceId, "AzureActivity | summarize Count = count() by ResourceGroup | top 10 by Count", - TimeSpan.FromDays(1)); + new DateTimeRange(TimeSpan.FromDays(1))); Response response = await client.QueryBatchAsync(batch); @@ -191,20 +185,18 @@ public async Task QueryLogsWithTimeout() { #region Snippet:QueryLogsWithTimeout #if SNIPPET - var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string workspaceId = TestEnvironment.WorkspaceId; #endif - var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + var client = new LogsQueryClient(new DefaultAzureCredential()); // Query TOP 10 resource groups by event count Response> response = await client.QueryAsync( workspaceId, "AzureActivity | summarize count()", - TimeSpan.FromDays(1), + new DateTimeRange(TimeSpan.FromDays(1)), options: new LogsQueryOptions { ServerTimeout = TimeSpan.FromMinutes(10) @@ -223,19 +215,17 @@ public async Task BadRequest() { #region Snippet:BadRequest #if SNIPPET - var endpoint = new Uri("https://api.loganalytics.io"); string workspaceId = ""; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string workspaceId = TestEnvironment.WorkspaceId; #endif - var client = new LogsQueryClient(endpoint, new DefaultAzureCredential()); + var client = new LogsQueryClient(new DefaultAzureCredential()); try { await client.QueryAsync( - workspaceId, "My Not So Valid Query", TimeSpan.FromDays(1)); + workspaceId, "My Not So Valid Query", new DateTimeRange(TimeSpan.FromDays(1))); } catch (Exception e) { diff --git a/sdk/monitor/Azure.Monitor.Query/tests/MetricsQueryClientSamples.cs b/sdk/monitor/Azure.Monitor.Query/tests/MetricsQueryClientSamples.cs index 23e1e1fdf3a6..1e9eaf364c08 100644 --- a/sdk/monitor/Azure.Monitor.Query/tests/MetricsQueryClientSamples.cs +++ b/sdk/monitor/Azure.Monitor.Query/tests/MetricsQueryClientSamples.cs @@ -18,15 +18,15 @@ public async Task QueryMetrics() #region Snippet:QueryMetrics #if SNIPPET - var endpoint = new Uri("https://management.azure.com"); string resourceId = "/subscriptions//resourceGroups//providers/Microsoft.OperationalInsights/workspaces/"; #else - Uri endpoint = TestEnvironment.LogsEndpoint; string resourceId = TestEnvironment.MetricsResource; #endif - var metricsClient = new MetricsQueryClient(endpoint, new DefaultAzureCredential()); + #region Snippet:CreateMetricsClient + var metricsClient = new MetricsQueryClient(new DefaultAzureCredential()); + #endregion Response results = await metricsClient.QueryAsync( resourceId,