Get desktop application:
View/edit binary Protocol Buffers messages
BigQuery table identifier (OPTIONAL) dataset - logical container that holds tables and views tablename - name of the table to hold these metrics; the same tablename is used across datasets The BigQuery project identifier is the Google Cloud billing entity set up for the organization to use. This is predefined and is therefore omitted from the protobuf message definition. The BigQuery table specification is optional, as a suitable default is chosen by the BES Endpoint. This message may be useful for development testing, however, when updating the "production" metrics table is undesirable. NOTE: The BES Endpoint will not create the dataset and/or table for you. These must be created manually ahead of time.
Used in:
string project = 1;
Each metric tag must be supplied in the form of a key/value string pair.
Used in:
BigQuery metric definition compatible with Prometheus remote read adapter. The 'tags' field is a list of key/value pairs, with each key and value formatted as a string. There is no restriction on the number of tags per metric, nor are there any mandatory keys required for each metric. Note that these tags are translated by the BES Endpoint into a JSON-like string of comma-separated key=value pairs for consumption by BigQuery. Various tags may be used depending on the test application. Here are some examples: direction - a direction qualifier for the metric (e.g. rx, tx) realm - designates the test area of interest (e.g. systest, emulation) type - a subtype qualifier for the metric (e.g. for pps: flow, link, or total) units - the units used for the metric value (percent, Gbps, MB, etc.) The following tags are always inserted by the BES Endpoint using information obtained from the Bazel TestResults event: invocation_id - the invocation identifier assigned by the Bazel 'test' command invocation_sha - a SHA256 hash representing the following attributes provided by the Bazel 'test' command: invocation_id, build_id, run run - the individual run number of the Bazel test (i.e. --runs_per_test option) test_name - identifies the test from which the metric originates Tags are also used to identify most of the setup information used to run a test, such as the nodes used, MTU size, various offload modes, etc. These are stored as additional tags, rather than in separate relational tables, so that they can be queried by Prometheus. For example: tx_node - device used to send the workload traffic tx_ifname - interface name used for sender node tx_ipaddr - IP address of sender node rx_node - device used to receive the workload traffic rx_ifname - interface name used for receiverer node rx_ipaddr - IP address of receiv node sr_profile - Shrinkray profile used to define test network topology tso_mode - TCP segment offload mode (header_only|header_fill|none) NOTE: It is TBD whether this .proto file should formally define certain commonly used tag names while allowing for others to be created ad hoc. Want to avoid the situation of having frequent updates to this .proto file, which in turn requires updating the BES Endpoint service.
Used in:
nanoseconds since epoch (e.g. Python: time.time_ns())
A set of metrics reported by a test run to be stored in BigQuery. The BES Endpoint normally decides which BigQuery table to use, but an optional table identifier may be specified for development testing, etc.