diff options
author | Craig Tiller <ctiller@google.com> | 2017-09-07 13:31:12 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2017-09-07 13:31:12 -0700 |
commit | 06a1baed61fb9b8fe905667a6f343c672396486e (patch) | |
tree | ec59d73acbd54e34bba45719c16262247fa76483 /src/core | |
parent | 6155df6e5c3f5a1df614d4470a6b823f7618457c (diff) |
Better HTTP stats
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/ext/transport/chttp2/transport/chttp2_transport.c | 3 | ||||
-rw-r--r-- | src/core/lib/debug/stats_data.c | 1 | ||||
-rw-r--r-- | src/core/lib/debug/stats_data.h | 3 | ||||
-rw-r--r-- | src/core/lib/debug/stats_data.yaml | 1 |
4 files changed, 8 insertions, 0 deletions
diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.c b/src/core/ext/transport/chttp2/transport/chttp2_transport.c index e72397cd45..d6684420aa 100644 --- a/src/core/ext/transport/chttp2/transport/chttp2_transport.c +++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.c @@ -940,6 +940,9 @@ static void write_action_begin_locked(grpc_exec_ctx *exec_ctx, void *gt, if (r.writing) { grpc_closure_scheduler *scheduler = write_scheduler(t, r.early_results_scheduled, r.partial); + if (scheduler != grpc_schedule_on_exec_ctx) { + GRPC_STATS_INC_HTTP2_WRITES_OFFLOADED(exec_ctx); + } set_write_state( exec_ctx, t, r.partial ? GRPC_CHTTP2_WRITE_STATE_WRITING_WITH_MORE : GRPC_CHTTP2_WRITE_STATE_WRITING, diff --git a/src/core/lib/debug/stats_data.c b/src/core/lib/debug/stats_data.c index ec46878ced..490d257d2f 100644 --- a/src/core/lib/debug/stats_data.c +++ b/src/core/lib/debug/stats_data.c @@ -42,6 +42,7 @@ const char *grpc_stats_counter_name[GRPC_STATS_COUNTER_COUNT] = { "http2_op_recv_trailing_metadata", "http2_pings_sent", "http2_writes_begun", + "http2_writes_offloaded", "combiner_locks_initiated", "combiner_locks_scheduled_items", "combiner_locks_scheduled_final_items", diff --git a/src/core/lib/debug/stats_data.h b/src/core/lib/debug/stats_data.h index 1b89f580c1..b0f5946eb0 100644 --- a/src/core/lib/debug/stats_data.h +++ b/src/core/lib/debug/stats_data.h @@ -44,6 +44,7 @@ typedef enum { GRPC_STATS_COUNTER_HTTP2_OP_RECV_TRAILING_METADATA, GRPC_STATS_COUNTER_HTTP2_PINGS_SENT, GRPC_STATS_COUNTER_HTTP2_WRITES_BEGUN, + GRPC_STATS_COUNTER_HTTP2_WRITES_OFFLOADED, GRPC_STATS_COUNTER_COMBINER_LOCKS_INITIATED, GRPC_STATS_COUNTER_COMBINER_LOCKS_SCHEDULED_ITEMS, GRPC_STATS_COUNTER_COMBINER_LOCKS_SCHEDULED_FINAL_ITEMS, @@ -125,6 +126,8 @@ typedef enum { GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_PINGS_SENT) #define GRPC_STATS_INC_HTTP2_WRITES_BEGUN(exec_ctx) \ GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_WRITES_BEGUN) +#define GRPC_STATS_INC_HTTP2_WRITES_OFFLOADED(exec_ctx) \ + GRPC_STATS_INC_COUNTER((exec_ctx), GRPC_STATS_COUNTER_HTTP2_WRITES_OFFLOADED) #define GRPC_STATS_INC_COMBINER_LOCKS_INITIATED(exec_ctx) \ GRPC_STATS_INC_COUNTER((exec_ctx), \ GRPC_STATS_COUNTER_COMBINER_LOCKS_INITIATED) diff --git a/src/core/lib/debug/stats_data.yaml b/src/core/lib/debug/stats_data.yaml index 4caa72f26a..64eb4df6d1 100644 --- a/src/core/lib/debug/stats_data.yaml +++ b/src/core/lib/debug/stats_data.yaml @@ -57,6 +57,7 @@ buckets: 64 - counter: http2_pings_sent - counter: http2_writes_begun +- counter: http2_writes_offloaded # combiner locks - counter: combiner_locks_initiated - counter: combiner_locks_scheduled_items |