apache_beam.testing.load_tests.load_test_metrics_utils module

Utility functions used for integrating Metrics API into load tests pipelines.

Metrics are send to BigQuery in following format: test_id | submit_timestamp | metric_type | value

The ‘test_id’ is common for all metrics for one run. Currently it is possible to have following metrics types: * runtime * total_bytes_count

apache_beam.testing.load_tests.load_test_metrics_utils.get_element_by_schema(schema_name, insert_list)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.MetricsReader(project_name=None, bq_table=None, bq_dataset=None, filters=None)[source]

Bases: object

publishers = []
publish_metrics(result)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.Metric(submit_timestamp, metric_id)[source]

Bases: object

value = None
label = None
as_dict()[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.CounterMetric(counter_dict, submit_timestamp, metric_id)[source]

Bases: apache_beam.testing.load_tests.load_test_metrics_utils.Metric

class apache_beam.testing.load_tests.load_test_metrics_utils.RuntimeMetric(runtime_list, submit_timestamp, metric_id)[source]

Bases: apache_beam.testing.load_tests.load_test_metrics_utils.Metric

class apache_beam.testing.load_tests.load_test_metrics_utils.ConsoleMetricsPublisher[source]

Bases: object

publish(results)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.BigQueryMetricsPublisher(project_name, table, dataset)[source]

Bases: object

publish(results)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.BigQueryClient(project_name, table, dataset)[source]

Bases: object

save(results)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.MeasureTime(namespace)[source]

Bases: apache_beam.transforms.core.DoFn

start_bundle()[source]
finish_bundle()[source]
process(element)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.MeasureBytes(namespace, extractor=None)[source]

Bases: apache_beam.transforms.core.DoFn

LABEL = 'total_bytes'
process(element, *args)[source]
class apache_beam.testing.load_tests.load_test_metrics_utils.CountMessages(namespace)[source]

Bases: apache_beam.transforms.core.DoFn

LABEL = 'total_messages'
process(element)[source]