Craig Tiller 41cb61de8b Merge github.com:grpc/grpc into filter-selection 9 éve
..
README.md 9686dabd04 Initial refactoring and context API changes 10 éve
aggregation.h 1c09accaad change aggregation_ops to internal type 10 éve
context.c 600e993e7a add checking of character values 10 éve
grpc_context.c 76c3d7481f Add API tracing to gRPC core 10 éve
grpc_filter.c a44cbfc11c Fix race condition in transport API 10 éve
grpc_filter.h 2845c86958 Fix include guard of census/grpc_filter.h 10 éve
grpc_plugin.c 178edfae2b Decouple filter selection from channel construction 10 éve
grpc_plugin.h 178edfae2b Decouple filter selection from channel construction 10 éve
initialize.c 268c356040 Remove bad error return in census_initialize 10 éve
mlog.c 7771544111 rename census log files to avoid build breakage on MacOS 10 éve
mlog.h 7771544111 rename census log files to avoid build breakage on MacOS 10 éve
operation.c 7536af02cf Eliminate gpr_ int types - and insist on C99 variants instead 10 éve
placeholders.c 5acb26d9d8 fix merge breakage 10 éve
rpc_metric_id.h 7536af02cf Eliminate gpr_ int types - and insist on C99 variants instead 10 éve
tracing.c 7536af02cf Eliminate gpr_ int types - and insist on C99 variants instead 10 éve

README.md

Census - a resource measurement and tracing system

This directory contains code for Census, which will ultimately provide the following features for any gRPC-using system:

  • A dapper-like tracing system, enabling tracing across a distributed infrastructure.
  • RPC statistics and measurements for key metrics, such as latency, bytes transferred, number of errors etc.
  • Resource measurement framework which can be used for measuring custom metrics. Through the use of tags, these can be broken down across the entire distributed stack.
  • Easy integration of the above with Google Cloud Trace and Google Cloud Monitoring.

Concepts

Context

Operations

Tags

Metrics

API

Internal/RPC API

External/Client API

RPC API

Files in this directory

Note that files and functions in this directory can be split into two categories:

  • Files that define core census library functions. Functions etc. in these files are named census_*, and constitute the core census library functionality. At some time in the future, these will become a standalone library.
  • Files that define functions etc. that provide a convenient interface between grpc and the core census functionality. These files are all named grpc_*.{c,h}, and define function names beginning with grpc_census_*.