public async Task ListGroupStatsAsync() { // Snippet: ListGroupStatsAsync(string,QueryTimeRange,string,int?,CallSettings) // Create client ErrorStatsServiceClient errorStatsServiceClient = ErrorStatsServiceClient.Create(); // Initialize request argument(s) string formattedProjectName = ErrorStatsServiceClient.FormatProjectName("[PROJECT]"); QueryTimeRange timeRange = new QueryTimeRange(); // Make the request IPagedAsyncEnumerable <ListGroupStatsResponse, ErrorGroupStats> response = errorStatsServiceClient.ListGroupStatsAsync(formattedProjectName, timeRange); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((ErrorGroupStats 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 <ErrorGroupStats> > fixedSizePages = response.AsPages().WithFixedSize(pageSize); await fixedSizePages.ForEachAsync((FixedSizePage <ErrorGroupStats> page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (ErrorGroupStats item in page) { Console.WriteLine(item); } }); // End snippet }
public async Task ErrorReportingTest() { Task <ErrorStatsServiceClient> clientTask = ErrorStatsServiceClient.CreateAsync(); // Create a test server and make an http. using (TestServer server = TestServer.Create <ErrorReportingApplication>()) { await server.HttpClient.GetAsync(""); // Create a request that will filter on the TestId which is set to the service and version. ListGroupStatsRequest request = new ListGroupStatsRequest { ProjectName = new ProjectName(ProjectId).ToString(), ServiceFilter = new ServiceContextFilter { Service = TestId, Version = TestId } }; // Check that we have the proper results and the TestId shows up in the error. ErrorStatsServiceClient client = await clientTask; ErrorGroupStats stats = await client.ListGroupStatsAsync(request).FirstOrDefault(); Assert.NotNull(stats); Assert.True(stats.Count > 0); Assert.Contains(TestId, stats.Representative.Message); } }
/// <summary>Snippet for ListGroupStatsAsync</summary> public async Task ListGroupStatsAsync_RequestObject() { // Snippet: ListGroupStatsAsync(ListGroupStatsRequest,CallSettings) // Create client ErrorStatsServiceClient errorStatsServiceClient = await ErrorStatsServiceClient.CreateAsync(); // Initialize request argument(s) ListGroupStatsRequest request = new ListGroupStatsRequest { ProjectNameAsProjectName = new ProjectName("[PROJECT]"), TimeRange = new QueryTimeRange(), }; // Make the request PagedAsyncEnumerable <ListGroupStatsResponse, ErrorGroupStats> response = errorStatsServiceClient.ListGroupStatsAsync(request); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((ErrorGroupStats 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((ListGroupStatsResponse page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (ErrorGroupStats item in page) { 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 <ErrorGroupStats> 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 (ErrorGroupStats item in singlePage) { Console.WriteLine(item); } // Store the pageToken, for when the next page is required. string nextPageToken = singlePage.NextPageToken; // End snippet }