public async Task ListLogMetricsAsync() { // Snippet: ListLogMetricsAsync(string,string,int?,CallSettings) // Create client MetricsServiceV2Client metricsServiceV2Client = MetricsServiceV2Client.Create(); // Initialize request argument(s) string formattedParent = MetricsServiceV2Client.FormatParentName("[PROJECT]"); // Make the request IPagedAsyncEnumerable <ListLogMetricsResponse, LogMetric> response = metricsServiceV2Client.ListLogMetricsAsync(formattedParent); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((LogMetric item) => { // Do something with each item Console.WriteLine(item); }); // Or iterate over fixed-sized pages, lazily performing RPCs as required int pageSize = 10; IAsyncEnumerable <FixedSizePage <LogMetric> > fixedSizePages = response.AsPages().WithFixedSize(pageSize); await fixedSizePages.ForEachAsync((FixedSizePage <LogMetric> page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (LogMetric item in page) { Console.WriteLine(item); } }); // End snippet }
/// <summary>Snippet for ListLogMetricsAsync</summary> public async Task ListLogMetricsRequestObjectAsync() { // Snippet: ListLogMetricsAsync(ListLogMetricsRequest, CallSettings) // Create client MetricsServiceV2Client metricsServiceV2Client = await MetricsServiceV2Client.CreateAsync(); // Initialize request argument(s) ListLogMetricsRequest request = new ListLogMetricsRequest { ParentAsProjectName = ProjectName.FromProject("[PROJECT]"), }; // Make the request PagedAsyncEnumerable <ListLogMetricsResponse, LogMetric> response = metricsServiceV2Client.ListLogMetricsAsync(request); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((LogMetric item) => { // Do something with each item Console.WriteLine(item); }); // Or iterate over pages (of server-defined size), performing one RPC per page await response.AsRawResponses().ForEachAsync((ListLogMetricsResponse page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (LogMetric item in page) { // Do something with each item Console.WriteLine(item); } }); // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required int pageSize = 10; Page <LogMetric> singlePage = await response.ReadPageAsync(pageSize); // Do something with the page of items Console.WriteLine($"A page of {pageSize} results (unless it's the final page):"); foreach (LogMetric item in singlePage) { // Do something with each item Console.WriteLine(item); } // Store the pageToken, for when the next page is required. string nextPageToken = singlePage.NextPageToken; // End snippet }