aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--BUILD12
-rw-r--r--Makefile2
-rw-r--r--build.json4
-rw-r--r--gRPC.podspec7
-rw-r--r--include/grpc/census.h105
-rw-r--r--src/core/census/aggregation.h (renamed from src/core/census/record_stat.c)36
-rw-r--r--src/core/census/grpc_filter.c32
-rw-r--r--src/core/census/rpc_metric_id.h (renamed from src/core/census/rpc_stat_id.h)27
-rw-r--r--tools/doxygen/Doxyfile.core.internal4
-rw-r--r--tools/run_tests/sources_and_headers.json14
-rw-r--r--vsprojects/grpc/grpc.vcxproj5
-rw-r--r--vsprojects/grpc/grpc.vcxproj.filters8
-rw-r--r--vsprojects/grpc_unsecure/grpc_unsecure.vcxproj5
-rw-r--r--vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters8
14 files changed, 191 insertions, 78 deletions
diff --git a/BUILD b/BUILD
index 72a496dce1..21fb2246fd 100644
--- a/BUILD
+++ b/BUILD
@@ -245,8 +245,9 @@ cc_library(
"src/core/transport/stream_op.h",
"src/core/transport/transport.h",
"src/core/transport/transport_impl.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.h",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
"src/core/httpcli/httpcli_security_connector.c",
"src/core/security/base64.c",
"src/core/security/client_auth_filter.c",
@@ -387,7 +388,6 @@ cc_library(
"src/core/census/context.c",
"src/core/census/initialize.c",
"src/core/census/operation.c",
- "src/core/census/record_stat.c",
"src/core/census/tracing.c",
],
hdrs = [
@@ -515,8 +515,9 @@ cc_library(
"src/core/transport/stream_op.h",
"src/core/transport/transport.h",
"src/core/transport/transport_impl.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.h",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
"src/core/surface/init_unsecure.c",
"src/core/census/grpc_context.c",
"src/core/census/grpc_filter.c",
@@ -637,7 +638,6 @@ cc_library(
"src/core/census/context.c",
"src/core/census/initialize.c",
"src/core/census/operation.c",
- "src/core/census/record_stat.c",
"src/core/census/tracing.c",
],
hdrs = [
@@ -1151,7 +1151,6 @@ objc_library(
"src/core/census/context.c",
"src/core/census/initialize.c",
"src/core/census/operation.c",
- "src/core/census/record_stat.c",
"src/core/census/tracing.c",
],
hdrs = [
@@ -1276,8 +1275,9 @@ objc_library(
"src/core/transport/stream_op.h",
"src/core/transport/transport.h",
"src/core/transport/transport_impl.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.h",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
],
includes = [
"include",
diff --git a/Makefile b/Makefile
index 1c2fca3154..703676f5fa 100644
--- a/Makefile
+++ b/Makefile
@@ -4150,7 +4150,6 @@ LIBGRPC_SRC = \
src/core/census/context.c \
src/core/census/initialize.c \
src/core/census/operation.c \
- src/core/census/record_stat.c \
src/core/census/tracing.c \
PUBLIC_HEADERS_C += \
@@ -4426,7 +4425,6 @@ LIBGRPC_UNSECURE_SRC = \
src/core/census/context.c \
src/core/census/initialize.c \
src/core/census/operation.c \
- src/core/census/record_stat.c \
src/core/census/tracing.c \
PUBLIC_HEADERS_C += \
diff --git a/build.json b/build.json
index 1e00771ee3..e5b7cd99ce 100644
--- a/build.json
+++ b/build.json
@@ -18,14 +18,14 @@
"include/grpc/census.h"
],
"headers": [
+ "src/core/census/aggregation.h",
"src/core/census/context.h",
- "src/core/census/rpc_stat_id.h"
+ "src/core/census/rpc_metric_id.h"
],
"src": [
"src/core/census/context.c",
"src/core/census/initialize.c",
"src/core/census/operation.c",
- "src/core/census/record_stat.c",
"src/core/census/tracing.c"
]
},
diff --git a/gRPC.podspec b/gRPC.podspec
index 0349d04c6a..d0e1e2d848 100644
--- a/gRPC.podspec
+++ b/gRPC.podspec
@@ -247,8 +247,9 @@ Pod::Spec.new do |s|
'src/core/transport/stream_op.h',
'src/core/transport/transport.h',
'src/core/transport/transport_impl.h',
+ 'src/core/census/aggregation.h',
'src/core/census/context.h',
- 'src/core/census/rpc_stat_id.h',
+ 'src/core/census/rpc_metric_id.h',
'grpc/grpc_security.h',
'grpc/byte_buffer.h',
'grpc/byte_buffer_reader.h',
@@ -396,7 +397,6 @@ Pod::Spec.new do |s|
'src/core/census/context.c',
'src/core/census/initialize.c',
'src/core/census/operation.c',
- 'src/core/census/record_stat.c',
'src/core/census/tracing.c'
ss.private_header_files = 'src/core/support/env.h',
@@ -521,8 +521,9 @@ Pod::Spec.new do |s|
'src/core/transport/stream_op.h',
'src/core/transport/transport.h',
'src/core/transport/transport_impl.h',
+ 'src/core/census/aggregation.h',
'src/core/census/context.h',
- 'src/core/census/rpc_stat_id.h'
+ 'src/core/census/rpc_metric_id.h'
ss.header_mappings_dir = '.'
diff --git a/include/grpc/census.h b/include/grpc/census.h
index d1a2978bd2..2f36665d46 100644
--- a/include/grpc/census.h
+++ b/include/grpc/census.h
@@ -379,16 +379,107 @@ int census_tag_set_next(census_tag_set_iterator *it, census_tag_const *tag);
invalidated, and should not be used once close is called. */
void census_tag_set_close(census_tag_set_iterator *it);
-/* A census statistic to be recorded comprises two parts: an ID for the
- * particular statistic and the value to be recorded against it. */
+/* Core stats collection API's. The following concepts are used:
+ * Aggregation: A collection of values. Census supports the following
+ aggregation types:
+ Sum - a single summation type. Typically used for keeping (e.g.)
+ counts of events.
+ Distribution - statistical distribution information, used for
+ recording average, standard deviation etc.
+ Histogram - a histogram of measurements falling in defined bucket
+ boundaries.
+ Window - a count of events that happen in reolling time window.
+ New aggregation types can be added by the user, if desired (see
+ census_register_aggregation()).
+ * Metric: Each measurement is for a single metric. Examples include RPC
+ latency, CPU seconds consumed, and bytes transmitted.
+ * View: A view is a combination of a metric, a tag set (in which the tag
+ values are regular expressions) and a set of aggregations. When a
+ measurement for a metric matches the view tags, it is recorded (for each
+ unique set of tags) against each aggregation. Each metric can have an
+ arbitrary number of views by which it will be broken down.
+*/
+
+/* A single value to be recorded comprises two parts: an ID for the particular
+ * metric and the value to be recorded against it. */
typedef struct {
- int id;
+ gpr_uint32 metric_id;
double value;
-} census_stat;
+} census_value;
+
+/* Record new usage values against the given context. */
+void census_record_values(census_context *context, census_value *values,
+ size_t nvalues);
+
+/** Type representing a particular aggregation */
+typedef struct census_aggregation_ops census_aggregation_ops;
+
+/* Predefined aggregation types, for use with census_view_create(). */
+extern census_aggregation_ops census_agg_sum;
+extern census_aggregation_ops census_agg_distribution;
+extern census_aggregation_ops census_agg_histogram;
+extern census_aggregation_ops census_agg_window;
+
+/** Information needed to instantiate a new aggregation. Used in view
+ construction via census_define_view(). */
+typedef struct {
+ const census_aggregation_ops *ops;
+ const void
+ *create_arg; /* Argument to be used for aggregation initialization. */
+} census_aggregation;
+
+/** A census view type. Opaque. */
+typedef struct census_view census_view;
+
+/** Create a new view.
+ @param metric_id Metric with which this view is associated.
+ @param tags tags that define the view
+ @param aggregations aggregations to associate with the view
+ @param naggregations number of aggregations
+
+ @return A new census view
+*/
+census_view *census_view_create(gpr_uint32 metric_id,
+ const census_tag_set *tags,
+ const census_aggregation *aggregations,
+ size_t naggregations);
+
+/** Destroy a previously created view. */
+void census_view_delete(census_view *view);
+
+/** Metric ID associated with a view */
+size_t census_view_metric(const census_view *view);
+
+/** Number of aggregations associated with view. */
+size_t census_view_naggregations(const census_view *view);
+
+/** Get tags associated with view. */
+const census_tag_set *census_view_tags(const census_view *view);
+
+/** Get aggregation descriptors associated with a view. */
+const census_aggregation *census_view_aggregrations(const census_view *view);
+
+/** Holds all the aggregation data for a particular view instantiation. Forms
+ part of the data returned by census_view_data(). */
+typedef struct {
+ const census_tag_set *tags; /* Tags for this set of aggregations. */
+ const void **data; /* One data set for every aggregation in the view. */
+} census_view_aggregation_data;
+
+/** Census view data as returned by census_view_get_data(). */
+typedef struct {
+ size_t n_tag_sets; /* Number of unique tag sets that matched view. */
+ const census_view_aggregation_data *data; /* n_tag_sets entries */
+} census_view_data;
+
+/** Get data from aggregations associated with a view.
+ @param view View from which to get data.
+ @return Full set of data for all aggregations for the view.
+*/
+const census_view_data *census_view_get_data(const census_view *view);
-/* Record new stats against the given context. */
-void census_record_stat(census_context *context, census_stat *stats,
- size_t nstats);
+/** Reset all view data to zero for the specified view */
+void census_view_reset(census_view *view);
#ifdef __cplusplus
}
diff --git a/src/core/census/record_stat.c b/src/core/census/aggregation.h
index 3dd918618b..e9bc6ada96 100644
--- a/src/core/census/record_stat.c
+++ b/src/core/census/aggregation.h
@@ -31,8 +31,36 @@
*
*/
-#include <grpc/census.h>
-#include "src/core/census/rpc_stat_id.h"
+#include <stddef.h>
-void census_record_stat(census_context *context, census_stat *stats,
- size_t nstats) {}
+#ifndef GRPC_INTERNAL_CORE_CENSUS_AGGREGATION_H
+#define GRPC_INTERNAL_CORE_CENSUS_AGGREGATION_H
+
+/** Structure used to describe an aggregation type. */
+struct census_aggregation_ops {
+ /* Create a new aggregation. The pointer returned can be used in future calls
+ to clone(), free(), record(), data() and reset(). */
+ void *(*create)(const void *create_arg);
+ /* Make a copy of an aggregation created by create() */
+ void *(*clone)(const void *aggregation);
+ /* Destroy an aggregation created by create() */
+ void (*free)(void *aggregation);
+ /* Record a new value against aggregation. */
+ void (*record)(void *aggregation, double value);
+ /* Return current aggregation data. The caller must cast this object into
+ the correct type for the aggregation result. The object returned can be
+ freed by using free_data(). */
+ void *(*data)(const void *aggregation);
+ /* free data returned by data() */
+ void (*free_data)(void *data);
+ /* Reset an aggregation to default (zero) values. */
+ void (*reset)(void *aggregation);
+ /* Merge 'from' aggregation into 'to'. Both aggregations must be compatible */
+ void (*merge)(void *to, const void *from);
+ /* Fill buffer with printable string version of aggregation contents. For
+ debugging only. Returns the number of bytes added to buffer (a value == n
+ implies the buffer was of insufficient size). */
+ size_t (*print)(const void *aggregation, char *buffer, size_t n);
+};
+
+#endif /* GRPC_INTERNAL_CORE_CENSUS_AGGREGATION_H */
diff --git a/src/core/census/grpc_filter.c b/src/core/census/grpc_filter.c
index b78445595c..e01c9a2ad4 100644
--- a/src/core/census/grpc_filter.c
+++ b/src/core/census/grpc_filter.c
@@ -36,7 +36,7 @@
#include <stdio.h>
#include <string.h>
-#include "src/core/census/rpc_stat_id.h"
+#include "include/grpc/census.h"
#include "src/core/channel/channel_stack.h"
#include "src/core/channel/noop_filter.h"
#include "src/core/statistics/census_interface.h"
@@ -173,25 +173,15 @@ static void destroy_channel_elem(grpc_channel_element* elem) {
}
const grpc_channel_filter grpc_client_census_filter = {
- client_start_transport_op,
- grpc_channel_next_op,
- sizeof(call_data),
- client_init_call_elem,
- client_destroy_call_elem,
- sizeof(channel_data),
- init_channel_elem,
- destroy_channel_elem,
- grpc_call_next_get_peer,
- "census-client"};
+ client_start_transport_op, grpc_channel_next_op,
+ sizeof(call_data), client_init_call_elem,
+ client_destroy_call_elem, sizeof(channel_data),
+ init_channel_elem, destroy_channel_elem,
+ grpc_call_next_get_peer, "census-client"};
const grpc_channel_filter grpc_server_census_filter = {
- server_start_transport_op,
- grpc_channel_next_op,
- sizeof(call_data),
- server_init_call_elem,
- server_destroy_call_elem,
- sizeof(channel_data),
- init_channel_elem,
- destroy_channel_elem,
- grpc_call_next_get_peer,
- "census-server"};
+ server_start_transport_op, grpc_channel_next_op,
+ sizeof(call_data), server_init_call_elem,
+ server_destroy_call_elem, sizeof(channel_data),
+ init_channel_elem, destroy_channel_elem,
+ grpc_call_next_get_peer, "census-server"};
diff --git a/src/core/census/rpc_stat_id.h b/src/core/census/rpc_metric_id.h
index fc0aa6f43f..1d8e8806f5 100644
--- a/src/core/census/rpc_stat_id.h
+++ b/src/core/census/rpc_metric_id.h
@@ -31,16 +31,21 @@
*
*/
-#ifndef CENSUS_RPC_STAT_ID_H
-#define CENSUS_RPC_STAT_ID_H
+#ifndef CENSUS_RPC_METRIC_ID_H
+#define CENSUS_RPC_METRIC_ID_H
-/* Stats ID's used for RPC measurements. */
-#define CENSUS_INVALID_STAT_ID 0 /* ID 0 is always invalid */
-#define CENSUS_RPC_CLIENT_REQUESTS 1 /* Count of client requests sent. */
-#define CENSUS_RPC_SERVER_REQUESTS 2 /* Count of server requests sent. */
-#define CENSUS_RPC_CLIENT_ERRORS 3 /* Client error counts. */
-#define CENSUS_RPC_SERVER_ERRORS 4 /* Server error counts. */
-#define CENSUS_RPC_CLIENT_LATENCY 5 /* Client side request latency. */
-#define CENSUS_RPC_SERVER_LATENCY 6 /* Server side request latency. */
+/* Metric ID's used for RPC measurements. */
+/* Count of client requests sent. */
+#define CENSUS_METRIC_RPC_CLIENT_REQUESTS ((gpr_uint32)0)
+/* Count of server requests sent. */
+#define CENSUS_METRIC_RPC_SERVER_REQUESTS ((gpr_uint32)1)
+/* Client error counts. */
+#define CENSUS_METRIC_RPC_CLIENT_ERRORS ((gpr_uint32)2)
+/* Server error counts. */
+#define CENSUS_METRIC_RPC_SERVER_ERRORS ((gpr_uint32)3)
+/* Client side request latency. */
+#define CENSUS_METRIC_RPC_CLIENT_LATENCY ((gpr_uint32)4)
+/* Server side request latency. */
+#define CENSUS_METRIC_RPC_SERVER_LATENCY ((gpr_uint32)5)
-#endif /* CENSUS_RPC_STAT_ID_H */
+#endif /* CENSUS_RPC_METRIC_ID_H */
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index 0b7f89ffdd..729f8bf2ff 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -881,8 +881,9 @@ src/core/transport/metadata.h \
src/core/transport/stream_op.h \
src/core/transport/transport.h \
src/core/transport/transport_impl.h \
+src/core/census/aggregation.h \
src/core/census/context.h \
-src/core/census/rpc_stat_id.h \
+src/core/census/rpc_metric_id.h \
src/core/httpcli/httpcli_security_connector.c \
src/core/security/base64.c \
src/core/security/client_auth_filter.c \
@@ -1023,7 +1024,6 @@ src/core/transport/transport_op_string.c \
src/core/census/context.c \
src/core/census/initialize.c \
src/core/census/operation.c \
-src/core/census/record_stat.c \
src/core/census/tracing.c \
include/grpc/support/alloc.h \
include/grpc/support/atm.h \
diff --git a/tools/run_tests/sources_and_headers.json b/tools/run_tests/sources_and_headers.json
index 939261da65..21d6b80486 100644
--- a/tools/run_tests/sources_and_headers.json
+++ b/tools/run_tests/sources_and_headers.json
@@ -12229,9 +12229,10 @@
"include/grpc/grpc.h",
"include/grpc/grpc_security.h",
"include/grpc/status.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.h",
"src/core/census/grpc_filter.h",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
"src/core/channel/channel_args.h",
"src/core/channel/channel_stack.h",
"src/core/channel/client_channel.h",
@@ -12356,6 +12357,7 @@
"include/grpc/grpc.h",
"include/grpc/grpc_security.h",
"include/grpc/status.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.c",
"src/core/census/context.h",
"src/core/census/grpc_context.c",
@@ -12363,8 +12365,7 @@
"src/core/census/grpc_filter.h",
"src/core/census/initialize.c",
"src/core/census/operation.c",
- "src/core/census/record_stat.c",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
"src/core/census/tracing.c",
"src/core/channel/channel_args.c",
"src/core/channel/channel_args.h",
@@ -12708,9 +12709,10 @@
"include/grpc/compression.h",
"include/grpc/grpc.h",
"include/grpc/status.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.h",
"src/core/census/grpc_filter.h",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
"src/core/channel/channel_args.h",
"src/core/channel/channel_stack.h",
"src/core/channel/client_channel.h",
@@ -12821,6 +12823,7 @@
"include/grpc/compression.h",
"include/grpc/grpc.h",
"include/grpc/status.h",
+ "src/core/census/aggregation.h",
"src/core/census/context.c",
"src/core/census/context.h",
"src/core/census/grpc_context.c",
@@ -12828,8 +12831,7 @@
"src/core/census/grpc_filter.h",
"src/core/census/initialize.c",
"src/core/census/operation.c",
- "src/core/census/record_stat.c",
- "src/core/census/rpc_stat_id.h",
+ "src/core/census/rpc_metric_id.h",
"src/core/census/tracing.c",
"src/core/channel/channel_args.c",
"src/core/channel/channel_args.h",
diff --git a/vsprojects/grpc/grpc.vcxproj b/vsprojects/grpc/grpc.vcxproj
index f85216151b..6857f7c9a2 100644
--- a/vsprojects/grpc/grpc.vcxproj
+++ b/vsprojects/grpc/grpc.vcxproj
@@ -343,8 +343,9 @@
<ClInclude Include="..\..\src\core\transport\stream_op.h" />
<ClInclude Include="..\..\src\core\transport\transport.h" />
<ClInclude Include="..\..\src\core\transport\transport_impl.h" />
+ <ClInclude Include="..\..\src\core\census\aggregation.h" />
<ClInclude Include="..\..\src\core\census\context.h" />
- <ClInclude Include="..\..\src\core\census\rpc_stat_id.h" />
+ <ClInclude Include="..\..\src\core\census\rpc_metric_id.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\core\httpcli\httpcli_security_connector.c">
@@ -627,8 +628,6 @@
</ClCompile>
<ClCompile Include="..\..\src\core\census\operation.c">
</ClCompile>
- <ClCompile Include="..\..\src\core\census\record_stat.c">
- </ClCompile>
<ClCompile Include="..\..\src\core\census\tracing.c">
</ClCompile>
</ItemGroup>
diff --git a/vsprojects/grpc/grpc.vcxproj.filters b/vsprojects/grpc/grpc.vcxproj.filters
index 835aa1b165..dc35c0535f 100644
--- a/vsprojects/grpc/grpc.vcxproj.filters
+++ b/vsprojects/grpc/grpc.vcxproj.filters
@@ -421,9 +421,6 @@
<ClCompile Include="..\..\src\core\census\operation.c">
<Filter>src\core\census</Filter>
</ClCompile>
- <ClCompile Include="..\..\src\core\census\record_stat.c">
- <Filter>src\core\census</Filter>
- </ClCompile>
<ClCompile Include="..\..\src\core\census\tracing.c">
<Filter>src\core\census</Filter>
</ClCompile>
@@ -794,10 +791,13 @@
<ClInclude Include="..\..\src\core\transport\transport_impl.h">
<Filter>src\core\transport</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\core\census\aggregation.h">
+ <Filter>src\core\census</Filter>
+ </ClInclude>
<ClInclude Include="..\..\src\core\census\context.h">
<Filter>src\core\census</Filter>
</ClInclude>
- <ClInclude Include="..\..\src\core\census\rpc_stat_id.h">
+ <ClInclude Include="..\..\src\core\census\rpc_metric_id.h">
<Filter>src\core\census</Filter>
</ClInclude>
</ItemGroup>
diff --git a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj
index ca73b5633a..bec4ebf692 100644
--- a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj
+++ b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj
@@ -326,8 +326,9 @@
<ClInclude Include="..\..\src\core\transport\stream_op.h" />
<ClInclude Include="..\..\src\core\transport\transport.h" />
<ClInclude Include="..\..\src\core\transport\transport_impl.h" />
+ <ClInclude Include="..\..\src\core\census\aggregation.h" />
<ClInclude Include="..\..\src\core\census\context.h" />
- <ClInclude Include="..\..\src\core\census\rpc_stat_id.h" />
+ <ClInclude Include="..\..\src\core\census\rpc_metric_id.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\core\surface\init_unsecure.c">
@@ -570,8 +571,6 @@
</ClCompile>
<ClCompile Include="..\..\src\core\census\operation.c">
</ClCompile>
- <ClCompile Include="..\..\src\core\census\record_stat.c">
- </ClCompile>
<ClCompile Include="..\..\src\core\census\tracing.c">
</ClCompile>
</ItemGroup>
diff --git a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters
index 994539cfa2..63d69222e8 100644
--- a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters
+++ b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters
@@ -361,9 +361,6 @@
<ClCompile Include="..\..\src\core\census\operation.c">
<Filter>src\core\census</Filter>
</ClCompile>
- <ClCompile Include="..\..\src\core\census\record_stat.c">
- <Filter>src\core\census</Filter>
- </ClCompile>
<ClCompile Include="..\..\src\core\census\tracing.c">
<Filter>src\core\census</Filter>
</ClCompile>
@@ -692,10 +689,13 @@
<ClInclude Include="..\..\src\core\transport\transport_impl.h">
<Filter>src\core\transport</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\core\census\aggregation.h">
+ <Filter>src\core\census</Filter>
+ </ClInclude>
<ClInclude Include="..\..\src\core\census\context.h">
<Filter>src\core\census</Filter>
</ClInclude>
- <ClInclude Include="..\..\src\core\census\rpc_stat_id.h">
+ <ClInclude Include="..\..\src\core\census\rpc_metric_id.h">
<Filter>src\core\census</Filter>
</ClInclude>
</ItemGroup>