blob: c9871c4a56c72ebcc5d26e0453a6ca13c30c2889 [file] [log] [blame]
Craig Tiller28086682017-07-18 14:22:19 -07001/*
2 * Copyright 2017 gRPC authors.
Craig Tiller640dfe42017-08-30 13:34:49 -07003 *
Craig Tiller28086682017-07-18 14:22:19 -07004 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
Craig Tiller640dfe42017-08-30 13:34:49 -07007 *
Craig Tiller28086682017-07-18 14:22:19 -07008 * http://www.apache.org/licenses/LICENSE-2.0
Craig Tiller640dfe42017-08-30 13:34:49 -07009 *
Craig Tiller28086682017-07-18 14:22:19 -070010 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17/*
18 * Automatically generated by tools/codegen/core/gen_stats_data.py
19 */
20
21#ifndef GRPC_CORE_LIB_DEBUG_STATS_DATA_H
22#define GRPC_CORE_LIB_DEBUG_STATS_DATA_H
23
Craig Tiller640dfe42017-08-30 13:34:49 -070024#include <inttypes.h>
Craig Tiller97ec5eb2017-09-01 12:57:36 -070025#include "src/core/lib/iomgr/exec_ctx.h"
Craig Tiller640dfe42017-08-30 13:34:49 -070026
Craig Tiller28086682017-07-18 14:22:19 -070027typedef enum {
28 GRPC_STATS_COUNTER_CLIENT_CALLS_CREATED,
29 GRPC_STATS_COUNTER_SERVER_CALLS_CREATED,
Craig Tillerf1dc9c32017-09-13 14:21:27 -070030 GRPC_STATS_COUNTER_CQS_CREATED,
31 GRPC_STATS_COUNTER_CLIENT_CHANNELS_CREATED,
32 GRPC_STATS_COUNTER_CLIENT_SUBCHANNELS_CREATED,
33 GRPC_STATS_COUNTER_SERVER_CHANNELS_CREATED,
Craig Tillerb4bb1cd2017-07-20 14:18:17 -070034 GRPC_STATS_COUNTER_SYSCALL_POLL,
35 GRPC_STATS_COUNTER_SYSCALL_WAIT,
Craig Tiller640dfe42017-08-30 13:34:49 -070036 GRPC_STATS_COUNTER_HISTOGRAM_SLOW_LOOKUPS,
Craig Tiller57bb9a92017-08-31 16:44:15 -070037 GRPC_STATS_COUNTER_SYSCALL_WRITE,
38 GRPC_STATS_COUNTER_SYSCALL_READ,
Craig Tiller6155df62017-09-07 13:26:32 -070039 GRPC_STATS_COUNTER_TCP_BACKUP_POLLERS_CREATED,
40 GRPC_STATS_COUNTER_TCP_BACKUP_POLLER_POLLS,
Craig Tiller57bb9a92017-08-31 16:44:15 -070041 GRPC_STATS_COUNTER_HTTP2_OP_BATCHES,
42 GRPC_STATS_COUNTER_HTTP2_OP_CANCEL,
43 GRPC_STATS_COUNTER_HTTP2_OP_SEND_INITIAL_METADATA,
44 GRPC_STATS_COUNTER_HTTP2_OP_SEND_MESSAGE,
45 GRPC_STATS_COUNTER_HTTP2_OP_SEND_TRAILING_METADATA,
46 GRPC_STATS_COUNTER_HTTP2_OP_RECV_INITIAL_METADATA,
47 GRPC_STATS_COUNTER_HTTP2_OP_RECV_MESSAGE,
48 GRPC_STATS_COUNTER_HTTP2_OP_RECV_TRAILING_METADATA,
Craig Tiller50fec6a2017-09-08 15:21:00 -070049 GRPC_STATS_COUNTER_HTTP2_SETTINGS_WRITES,
Craig Tiller57bb9a92017-08-31 16:44:15 -070050 GRPC_STATS_COUNTER_HTTP2_PINGS_SENT,
51 GRPC_STATS_COUNTER_HTTP2_WRITES_BEGUN,
Craig Tiller06a1bae2017-09-07 13:31:12 -070052 GRPC_STATS_COUNTER_HTTP2_WRITES_OFFLOADED,
Craig Tiller073a88f2017-09-08 14:26:22 -070053 GRPC_STATS_COUNTER_HTTP2_WRITES_CONTINUED,
54 GRPC_STATS_COUNTER_HTTP2_PARTIAL_WRITES,
Craig Tiller3ff1fa62017-09-14 11:07:48 -070055 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_INITIAL_WRITE,
56 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_START_NEW_STREAM,
57 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_MESSAGE,
58 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_INITIAL_METADATA,
59 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_TRAILING_METADATA,
60 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_RETRY_SEND_PING,
61 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_CONTINUE_PINGS,
62 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_GOAWAY_SENT,
63 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_RST_STREAM,
64 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_CLOSE_FROM_API,
65 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_STREAM_FLOW_CONTROL,
66 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL,
67 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS,
68 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING,
69 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_SETTING,
70 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_UPDATE,
71 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_APPLICATION_PING,
72 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_KEEPALIVE_PING,
73 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL_UNSTALLED,
74 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_PING_RESPONSE,
75 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FORCE_RST_STREAM,
Craig Tiller57bb9a92017-08-31 16:44:15 -070076 GRPC_STATS_COUNTER_COMBINER_LOCKS_INITIATED,
77 GRPC_STATS_COUNTER_COMBINER_LOCKS_SCHEDULED_ITEMS,
78 GRPC_STATS_COUNTER_COMBINER_LOCKS_SCHEDULED_FINAL_ITEMS,
79 GRPC_STATS_COUNTER_COMBINER_LOCKS_OFFLOADED,
Craig Tiller07d2fa72017-09-07 13:13:36 -070080 GRPC_STATS_COUNTER_EXECUTOR_SCHEDULED_SHORT_ITEMS,
81 GRPC_STATS_COUNTER_EXECUTOR_SCHEDULED_LONG_ITEMS,
Craig Tiller57bb9a92017-08-31 16:44:15 -070082 GRPC_STATS_COUNTER_EXECUTOR_SCHEDULED_TO_SELF,
83 GRPC_STATS_COUNTER_EXECUTOR_WAKEUP_INITIATED,
84 GRPC_STATS_COUNTER_EXECUTOR_QUEUE_DRAINED,
Craig Tiller07d2fa72017-09-07 13:13:36 -070085 GRPC_STATS_COUNTER_EXECUTOR_PUSH_RETRIES,
Craig Tiller561dc322017-09-05 13:00:46 -070086 GRPC_STATS_COUNTER_SERVER_REQUESTED_CALLS,
87 GRPC_STATS_COUNTER_SERVER_SLOWPATH_REQUESTS_QUEUED,
Craig Tiller28086682017-07-18 14:22:19 -070088 GRPC_STATS_COUNTER_COUNT
89} grpc_stats_counters;
Craig Tiller640dfe42017-08-30 13:34:49 -070090extern const char *grpc_stats_counter_name[GRPC_STATS_COUNTER_COUNT];
Craig Tillereda90972017-09-08 09:52:29 -070091extern const char *grpc_stats_counter_doc[GRPC_STATS_COUNTER_COUNT];
Craig Tiller33aeaba2017-07-20 16:02:24 -070092typedef enum {
93 GRPC_STATS_HISTOGRAM_TCP_WRITE_SIZE,
Craig Tiller640dfe42017-08-30 13:34:49 -070094 GRPC_STATS_HISTOGRAM_TCP_WRITE_IOV_SIZE,
Craig Tiller33aeaba2017-07-20 16:02:24 -070095 GRPC_STATS_HISTOGRAM_TCP_READ_SIZE,
Craig Tillerc92f18c2017-08-31 16:46:32 -070096 GRPC_STATS_HISTOGRAM_TCP_READ_OFFER,
Craig Tillereda90972017-09-08 09:52:29 -070097 GRPC_STATS_HISTOGRAM_TCP_READ_OFFER_IOV_SIZE,
Craig Tiller57bb9a92017-08-31 16:44:15 -070098 GRPC_STATS_HISTOGRAM_HTTP2_SEND_MESSAGE_SIZE,
Craig Tiller50fec6a2017-09-08 15:21:00 -070099 GRPC_STATS_HISTOGRAM_HTTP2_SEND_INITIAL_METADATA_PER_WRITE,
100 GRPC_STATS_HISTOGRAM_HTTP2_SEND_MESSAGE_PER_WRITE,
101 GRPC_STATS_HISTOGRAM_HTTP2_SEND_TRAILING_METADATA_PER_WRITE,
102 GRPC_STATS_HISTOGRAM_HTTP2_SEND_FLOWCTL_PER_WRITE,
Craig Tiller561dc322017-09-05 13:00:46 -0700103 GRPC_STATS_HISTOGRAM_SERVER_CQS_CHECKED,
Craig Tiller33aeaba2017-07-20 16:02:24 -0700104 GRPC_STATS_HISTOGRAM_COUNT
105} grpc_stats_histograms;
Craig Tiller640dfe42017-08-30 13:34:49 -0700106extern const char *grpc_stats_histogram_name[GRPC_STATS_HISTOGRAM_COUNT];
Craig Tillereda90972017-09-08 09:52:29 -0700107extern const char *grpc_stats_histogram_doc[GRPC_STATS_HISTOGRAM_COUNT];
Craig Tiller640dfe42017-08-30 13:34:49 -0700108typedef enum {
109 GRPC_STATS_HISTOGRAM_TCP_WRITE_SIZE_FIRST_SLOT = 0,
110 GRPC_STATS_HISTOGRAM_TCP_WRITE_SIZE_BUCKETS = 64,
111 GRPC_STATS_HISTOGRAM_TCP_WRITE_IOV_SIZE_FIRST_SLOT = 64,
112 GRPC_STATS_HISTOGRAM_TCP_WRITE_IOV_SIZE_BUCKETS = 64,
113 GRPC_STATS_HISTOGRAM_TCP_READ_SIZE_FIRST_SLOT = 128,
114 GRPC_STATS_HISTOGRAM_TCP_READ_SIZE_BUCKETS = 64,
Craig Tillerc92f18c2017-08-31 16:46:32 -0700115 GRPC_STATS_HISTOGRAM_TCP_READ_OFFER_FIRST_SLOT = 192,
116 GRPC_STATS_HISTOGRAM_TCP_READ_OFFER_BUCKETS = 64,
Craig Tillereda90972017-09-08 09:52:29 -0700117 GRPC_STATS_HISTOGRAM_TCP_READ_OFFER_IOV_SIZE_FIRST_SLOT = 256,
118 GRPC_STATS_HISTOGRAM_TCP_READ_OFFER_IOV_SIZE_BUCKETS = 64,
Craig Tillerc92f18c2017-08-31 16:46:32 -0700119 GRPC_STATS_HISTOGRAM_HTTP2_SEND_MESSAGE_SIZE_FIRST_SLOT = 320,
Craig Tiller57bb9a92017-08-31 16:44:15 -0700120 GRPC_STATS_HISTOGRAM_HTTP2_SEND_MESSAGE_SIZE_BUCKETS = 64,
Craig Tiller50fec6a2017-09-08 15:21:00 -0700121 GRPC_STATS_HISTOGRAM_HTTP2_SEND_INITIAL_METADATA_PER_WRITE_FIRST_SLOT = 384,
122 GRPC_STATS_HISTOGRAM_HTTP2_SEND_INITIAL_METADATA_PER_WRITE_BUCKETS = 64,
123 GRPC_STATS_HISTOGRAM_HTTP2_SEND_MESSAGE_PER_WRITE_FIRST_SLOT = 448,
124 GRPC_STATS_HISTOGRAM_HTTP2_SEND_MESSAGE_PER_WRITE_BUCKETS = 64,
125 GRPC_STATS_HISTOGRAM_HTTP2_SEND_TRAILING_METADATA_PER_WRITE_FIRST_SLOT = 512,
126 GRPC_STATS_HISTOGRAM_HTTP2_SEND_TRAILING_METADATA_PER_WRITE_BUCKETS = 64,
127 GRPC_STATS_HISTOGRAM_HTTP2_SEND_FLOWCTL_PER_WRITE_FIRST_SLOT = 576,
128 GRPC_STATS_HISTOGRAM_HTTP2_SEND_FLOWCTL_PER_WRITE_BUCKETS = 64,
Craig Tillerf73fe502017-09-11 12:06:52 -0700129 GRPC_STATS_HISTOGRAM_SERVER_CQS_CHECKED_FIRST_SLOT = 640,
Craig Tiller561dc322017-09-05 13:00:46 -0700130 GRPC_STATS_HISTOGRAM_SERVER_CQS_CHECKED_BUCKETS = 8,
Craig Tillerf73fe502017-09-11 12:06:52 -0700131 GRPC_STATS_HISTOGRAM_BUCKETS = 648
Craig Tiller640dfe42017-08-30 13:34:49 -0700132} grpc_stats_histogram_constants;
133#define GRPC_STATS_INC_CLIENT_CALLS_CREATED(exec_ctx) \
134 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_CLIENT_CALLS_CREATED)
135#define GRPC_STATS_INC_SERVER_CALLS_CREATED(exec_ctx) \
136 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SERVER_CALLS_CREATED)
Craig Tillerf1dc9c32017-09-13 14:21:27 -0700137#define GRPC_STATS_INC_CQS_CREATED(exec_ctx) \
138 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_CQS_CREATED)
139#define GRPC_STATS_INC_CLIENT_CHANNELS_CREATED(exec_ctx) \
140 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_CLIENT_CHANNELS_CREATED)
141#define GRPC_STATS_INC_CLIENT_SUBCHANNELS_CREATED(exec_ctx) \
142 GRPC_STATS_INC_COUNTER((exec_ctx), \
143 GRPC_STATS_COUNTER_CLIENT_SUBCHANNELS_CREATED)
144#define GRPC_STATS_INC_SERVER_CHANNELS_CREATED(exec_ctx) \
145 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SERVER_CHANNELS_CREATED)
Craig Tiller640dfe42017-08-30 13:34:49 -0700146#define GRPC_STATS_INC_SYSCALL_POLL(exec_ctx) \
147 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SYSCALL_POLL)
148#define GRPC_STATS_INC_SYSCALL_WAIT(exec_ctx) \
149 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SYSCALL_WAIT)
150#define GRPC_STATS_INC_HISTOGRAM_SLOW_LOOKUPS(exec_ctx) \
151 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HISTOGRAM_SLOW_LOOKUPS)
Craig Tiller57bb9a92017-08-31 16:44:15 -0700152#define GRPC_STATS_INC_SYSCALL_WRITE(exec_ctx) \
153 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SYSCALL_WRITE)
154#define GRPC_STATS_INC_SYSCALL_READ(exec_ctx) \
155 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SYSCALL_READ)
Craig Tiller6155df62017-09-07 13:26:32 -0700156#define GRPC_STATS_INC_TCP_BACKUP_POLLERS_CREATED(exec_ctx) \
157 GRPC_STATS_INC_COUNTER((exec_ctx), \
158 GRPC_STATS_COUNTER_TCP_BACKUP_POLLERS_CREATED)
159#define GRPC_STATS_INC_TCP_BACKUP_POLLER_POLLS(exec_ctx) \
160 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_TCP_BACKUP_POLLER_POLLS)
Craig Tiller57bb9a92017-08-31 16:44:15 -0700161#define GRPC_STATS_INC_HTTP2_OP_BATCHES(exec_ctx) \
162 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_OP_BATCHES)
163#define GRPC_STATS_INC_HTTP2_OP_CANCEL(exec_ctx) \
164 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_OP_CANCEL)
165#define GRPC_STATS_INC_HTTP2_OP_SEND_INITIAL_METADATA(exec_ctx) \
166 GRPC_STATS_INC_COUNTER((exec_ctx), \
167 GRPC_STATS_COUNTER_HTTP2_OP_SEND_INITIAL_METADATA)
168#define GRPC_STATS_INC_HTTP2_OP_SEND_MESSAGE(exec_ctx) \
169 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_OP_SEND_MESSAGE)
170#define GRPC_STATS_INC_HTTP2_OP_SEND_TRAILING_METADATA(exec_ctx) \
171 GRPC_STATS_INC_COUNTER((exec_ctx), \
172 GRPC_STATS_COUNTER_HTTP2_OP_SEND_TRAILING_METADATA)
173#define GRPC_STATS_INC_HTTP2_OP_RECV_INITIAL_METADATA(exec_ctx) \
174 GRPC_STATS_INC_COUNTER((exec_ctx), \
175 GRPC_STATS_COUNTER_HTTP2_OP_RECV_INITIAL_METADATA)
176#define GRPC_STATS_INC_HTTP2_OP_RECV_MESSAGE(exec_ctx) \
177 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_OP_RECV_MESSAGE)
178#define GRPC_STATS_INC_HTTP2_OP_RECV_TRAILING_METADATA(exec_ctx) \
179 GRPC_STATS_INC_COUNTER((exec_ctx), \
180 GRPC_STATS_COUNTER_HTTP2_OP_RECV_TRAILING_METADATA)
Craig Tiller50fec6a2017-09-08 15:21:00 -0700181#define GRPC_STATS_INC_HTTP2_SETTINGS_WRITES(exec_ctx) \
182 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_SETTINGS_WRITES)
Craig Tiller57bb9a92017-08-31 16:44:15 -0700183#define GRPC_STATS_INC_HTTP2_PINGS_SENT(exec_ctx) \
184 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_PINGS_SENT)
185#define GRPC_STATS_INC_HTTP2_WRITES_BEGUN(exec_ctx) \
186 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_WRITES_BEGUN)
Craig Tiller06a1bae2017-09-07 13:31:12 -0700187#define GRPC_STATS_INC_HTTP2_WRITES_OFFLOADED(exec_ctx) \
188 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_WRITES_OFFLOADED)
Craig Tiller073a88f2017-09-08 14:26:22 -0700189#define GRPC_STATS_INC_HTTP2_WRITES_CONTINUED(exec_ctx) \
190 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_WRITES_CONTINUED)
191#define GRPC_STATS_INC_HTTP2_PARTIAL_WRITES(exec_ctx) \
192 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_PARTIAL_WRITES)
Craig Tiller3ff1fa62017-09-14 11:07:48 -0700193#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_INITIAL_WRITE(exec_ctx) \
194 GRPC_STATS_INC_COUNTER( \
195 (exec_ctx), \
196 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_INITIAL_WRITE)
197#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_START_NEW_STREAM(exec_ctx) \
198 GRPC_STATS_INC_COUNTER( \
199 (exec_ctx), \
200 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_START_NEW_STREAM)
201#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SEND_MESSAGE(exec_ctx) \
202 GRPC_STATS_INC_COUNTER( \
203 (exec_ctx), GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_MESSAGE)
204#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SEND_INITIAL_METADATA( \
205 exec_ctx) \
206 GRPC_STATS_INC_COUNTER( \
207 (exec_ctx), \
208 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_INITIAL_METADATA)
209#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SEND_TRAILING_METADATA( \
210 exec_ctx) \
211 GRPC_STATS_INC_COUNTER( \
212 (exec_ctx), \
213 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_TRAILING_METADATA)
214#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_RETRY_SEND_PING(exec_ctx) \
215 GRPC_STATS_INC_COUNTER( \
216 (exec_ctx), \
217 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_RETRY_SEND_PING)
218#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_CONTINUE_PINGS(exec_ctx) \
219 GRPC_STATS_INC_COUNTER( \
220 (exec_ctx), \
221 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_CONTINUE_PINGS)
222#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_GOAWAY_SENT(exec_ctx) \
223 GRPC_STATS_INC_COUNTER( \
224 (exec_ctx), GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_GOAWAY_SENT)
225#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_RST_STREAM(exec_ctx) \
226 GRPC_STATS_INC_COUNTER( \
227 (exec_ctx), GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_RST_STREAM)
228#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_CLOSE_FROM_API(exec_ctx) \
229 GRPC_STATS_INC_COUNTER( \
230 (exec_ctx), \
231 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_CLOSE_FROM_API)
232#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_STREAM_FLOW_CONTROL( \
233 exec_ctx) \
234 GRPC_STATS_INC_COUNTER( \
235 (exec_ctx), \
236 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_STREAM_FLOW_CONTROL)
237#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL( \
238 exec_ctx) \
239 GRPC_STATS_INC_COUNTER( \
240 (exec_ctx), \
241 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL)
242#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS(exec_ctx) \
243 GRPC_STATS_INC_COUNTER( \
244 (exec_ctx), \
245 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS)
246#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING( \
247 exec_ctx) \
248 GRPC_STATS_INC_COUNTER( \
249 (exec_ctx), \
250 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING)
251#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_SETTING( \
252 exec_ctx) \
253 GRPC_STATS_INC_COUNTER( \
254 (exec_ctx), \
255 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_SETTING)
256#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_UPDATE( \
257 exec_ctx) \
258 GRPC_STATS_INC_COUNTER( \
259 (exec_ctx), \
260 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_UPDATE)
261#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_APPLICATION_PING(exec_ctx) \
262 GRPC_STATS_INC_COUNTER( \
263 (exec_ctx), \
264 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_APPLICATION_PING)
265#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_KEEPALIVE_PING(exec_ctx) \
266 GRPC_STATS_INC_COUNTER( \
267 (exec_ctx), \
268 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_KEEPALIVE_PING)
269#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL_UNSTALLED( \
270 exec_ctx) \
271 GRPC_STATS_INC_COUNTER( \
272 (exec_ctx), \
273 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL_UNSTALLED)
274#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_PING_RESPONSE(exec_ctx) \
275 GRPC_STATS_INC_COUNTER( \
276 (exec_ctx), \
277 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_PING_RESPONSE)
278#define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_FORCE_RST_STREAM(exec_ctx) \
279 GRPC_STATS_INC_COUNTER( \
280 (exec_ctx), \
281 GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FORCE_RST_STREAM)
Craig Tiller57bb9a92017-08-31 16:44:15 -0700282#define GRPC_STATS_INC_COMBINER_LOCKS_INITIATED(exec_ctx) \
283 GRPC_STATS_INC_COUNTER((exec_ctx), \
284 GRPC_STATS_COUNTER_COMBINER_LOCKS_INITIATED)
285#define GRPC_STATS_INC_COMBINER_LOCKS_SCHEDULED_ITEMS(exec_ctx) \
286 GRPC_STATS_INC_COUNTER((exec_ctx), \
287 GRPC_STATS_COUNTER_COMBINER_LOCKS_SCHEDULED_ITEMS)
288#define GRPC_STATS_INC_COMBINER_LOCKS_SCHEDULED_FINAL_ITEMS(exec_ctx) \
289 GRPC_STATS_INC_COUNTER( \
290 (exec_ctx), GRPC_STATS_COUNTER_COMBINER_LOCKS_SCHEDULED_FINAL_ITEMS)
291#define GRPC_STATS_INC_COMBINER_LOCKS_OFFLOADED(exec_ctx) \
292 GRPC_STATS_INC_COUNTER((exec_ctx), \
293 GRPC_STATS_COUNTER_COMBINER_LOCKS_OFFLOADED)
Craig Tiller07d2fa72017-09-07 13:13:36 -0700294#define GRPC_STATS_INC_EXECUTOR_SCHEDULED_SHORT_ITEMS(exec_ctx) \
295 GRPC_STATS_INC_COUNTER((exec_ctx), \
296 GRPC_STATS_COUNTER_EXECUTOR_SCHEDULED_SHORT_ITEMS)
297#define GRPC_STATS_INC_EXECUTOR_SCHEDULED_LONG_ITEMS(exec_ctx) \
298 GRPC_STATS_INC_COUNTER((exec_ctx), \
299 GRPC_STATS_COUNTER_EXECUTOR_SCHEDULED_LONG_ITEMS)
Craig Tiller57bb9a92017-08-31 16:44:15 -0700300#define GRPC_STATS_INC_EXECUTOR_SCHEDULED_TO_SELF(exec_ctx) \
301 GRPC_STATS_INC_COUNTER((exec_ctx), \
302 GRPC_STATS_COUNTER_EXECUTOR_SCHEDULED_TO_SELF)
303#define GRPC_STATS_INC_EXECUTOR_WAKEUP_INITIATED(exec_ctx) \
304 GRPC_STATS_INC_COUNTER((exec_ctx), \
305 GRPC_STATS_COUNTER_EXECUTOR_WAKEUP_INITIATED)
306#define GRPC_STATS_INC_EXECUTOR_QUEUE_DRAINED(exec_ctx) \
307 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_EXECUTOR_QUEUE_DRAINED)
Craig Tiller07d2fa72017-09-07 13:13:36 -0700308#define GRPC_STATS_INC_EXECUTOR_PUSH_RETRIES(exec_ctx) \
309 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_EXECUTOR_PUSH_RETRIES)
Craig Tiller561dc322017-09-05 13:00:46 -0700310#define GRPC_STATS_INC_SERVER_REQUESTED_CALLS(exec_ctx) \
311 GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_SERVER_REQUESTED_CALLS)
312#define GRPC_STATS_INC_SERVER_SLOWPATH_REQUESTS_QUEUED(exec_ctx) \
313 GRPC_STATS_INC_COUNTER((exec_ctx), \
314 GRPC_STATS_COUNTER_SERVER_SLOWPATH_REQUESTS_QUEUED)
Craig Tiller97ec5eb2017-09-01 12:57:36 -0700315#define GRPC_STATS_INC_TCP_WRITE_SIZE(exec_ctx, value) \
Craig Tiller56a84842017-09-01 16:36:52 -0700316 grpc_stats_inc_tcp_write_size((exec_ctx), (int)(value))
317void grpc_stats_inc_tcp_write_size(grpc_exec_ctx *exec_ctx, int x);
Craig Tiller97ec5eb2017-09-01 12:57:36 -0700318#define GRPC_STATS_INC_TCP_WRITE_IOV_SIZE(exec_ctx, value) \
Craig Tiller56a84842017-09-01 16:36:52 -0700319 grpc_stats_inc_tcp_write_iov_size((exec_ctx), (int)(value))
320void grpc_stats_inc_tcp_write_iov_size(grpc_exec_ctx *exec_ctx, int x);
Craig Tiller97ec5eb2017-09-01 12:57:36 -0700321#define GRPC_STATS_INC_TCP_READ_SIZE(exec_ctx, value) \
Craig Tiller56a84842017-09-01 16:36:52 -0700322 grpc_stats_inc_tcp_read_size((exec_ctx), (int)(value))
323void grpc_stats_inc_tcp_read_size(grpc_exec_ctx *exec_ctx, int x);
324#define GRPC_STATS_INC_TCP_READ_OFFER(exec_ctx, value) \
325 grpc_stats_inc_tcp_read_offer((exec_ctx), (int)(value))
326void grpc_stats_inc_tcp_read_offer(grpc_exec_ctx *exec_ctx, int x);
Craig Tillereda90972017-09-08 09:52:29 -0700327#define GRPC_STATS_INC_TCP_READ_OFFER_IOV_SIZE(exec_ctx, value) \
328 grpc_stats_inc_tcp_read_offer_iov_size((exec_ctx), (int)(value))
329void grpc_stats_inc_tcp_read_offer_iov_size(grpc_exec_ctx *exec_ctx, int x);
Craig Tiller56a84842017-09-01 16:36:52 -0700330#define GRPC_STATS_INC_HTTP2_SEND_MESSAGE_SIZE(exec_ctx, value) \
331 grpc_stats_inc_http2_send_message_size((exec_ctx), (int)(value))
332void grpc_stats_inc_http2_send_message_size(grpc_exec_ctx *exec_ctx, int x);
Craig Tiller50fec6a2017-09-08 15:21:00 -0700333#define GRPC_STATS_INC_HTTP2_SEND_INITIAL_METADATA_PER_WRITE(exec_ctx, value) \
334 grpc_stats_inc_http2_send_initial_metadata_per_write((exec_ctx), (int)(value))
335void grpc_stats_inc_http2_send_initial_metadata_per_write(
336 grpc_exec_ctx *exec_ctx, int x);
337#define GRPC_STATS_INC_HTTP2_SEND_MESSAGE_PER_WRITE(exec_ctx, value) \
338 grpc_stats_inc_http2_send_message_per_write((exec_ctx), (int)(value))
339void grpc_stats_inc_http2_send_message_per_write(grpc_exec_ctx *exec_ctx,
Craig Tiller56a84842017-09-01 16:36:52 -0700340 int x);
Craig Tiller50fec6a2017-09-08 15:21:00 -0700341#define GRPC_STATS_INC_HTTP2_SEND_TRAILING_METADATA_PER_WRITE(exec_ctx, value) \
342 grpc_stats_inc_http2_send_trailing_metadata_per_write((exec_ctx), \
343 (int)(value))
344void grpc_stats_inc_http2_send_trailing_metadata_per_write(
345 grpc_exec_ctx *exec_ctx, int x);
346#define GRPC_STATS_INC_HTTP2_SEND_FLOWCTL_PER_WRITE(exec_ctx, value) \
347 grpc_stats_inc_http2_send_flowctl_per_write((exec_ctx), (int)(value))
348void grpc_stats_inc_http2_send_flowctl_per_write(grpc_exec_ctx *exec_ctx,
349 int x);
Craig Tiller561dc322017-09-05 13:00:46 -0700350#define GRPC_STATS_INC_SERVER_CQS_CHECKED(exec_ctx, value) \
351 grpc_stats_inc_server_cqs_checked((exec_ctx), (int)(value))
352void grpc_stats_inc_server_cqs_checked(grpc_exec_ctx *exec_ctx, int x);
Craig Tillerf73fe502017-09-11 12:06:52 -0700353extern const int grpc_stats_histo_buckets[11];
354extern const int grpc_stats_histo_start[11];
355extern const int *const grpc_stats_histo_bucket_boundaries[11];
356extern void (*const grpc_stats_inc_histogram[11])(grpc_exec_ctx *exec_ctx,
Craig Tiller50fec6a2017-09-08 15:21:00 -0700357 int x);
Craig Tiller28086682017-07-18 14:22:19 -0700358
359#endif /* GRPC_CORE_LIB_DEBUG_STATS_DATA_H */