

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>apache_beam.metrics.monitoring_infos module &mdash; Apache Beam  documentation</title>
  

  
  
  
  

  
  <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
  
    
      <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
        <script type="text/javascript" src="_static/jquery.js"></script>
        <script type="text/javascript" src="_static/underscore.js"></script>
        <script type="text/javascript" src="_static/doctools.js"></script>
        <script type="text/javascript" src="_static/language_data.js"></script>
        <script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
    
    <script type="text/javascript" src="_static/js/theme.js"></script>

    

  
  <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="apache_beam.ml package" href="apache_beam.ml.html" />
    <link rel="prev" title="apache_beam.metrics.metricbase module" href="apache_beam.metrics.metricbase.html" /> 
</head>

<body class="wy-body-for-nav">

   
  <div class="wy-grid-for-nav">
    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >
          

          
            <a href="index.html" class="icon icon-home"> Apache Beam
          

          
          </a>

          
            
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="apache_beam.coders.html">apache_beam.coders package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.dataframe.html">apache_beam.dataframe package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.io.html">apache_beam.io package</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="apache_beam.metrics.html">apache_beam.metrics package</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="apache_beam.metrics.html#submodules">Submodules</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="apache_beam.metrics.cells.html">apache_beam.metrics.cells module</a></li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.metrics.metric.html">apache_beam.metrics.metric module</a></li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.metrics.metricbase.html">apache_beam.metrics.metricbase module</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">apache_beam.metrics.monitoring_infos module</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.ml.html">apache_beam.ml package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.options.html">apache_beam.options package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.portability.html">apache_beam.portability package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.runners.html">apache_beam.runners package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.transforms.html">apache_beam.transforms package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.typehints.html">apache_beam.typehints package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.utils.html">apache_beam.utils package</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.error.html">apache_beam.error module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pipeline.html">apache_beam.pipeline module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pvalue.html">apache_beam.pvalue module</a></li>
</ul>

            
          
        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="index.html">Apache Beam</a>
        
      </nav>


      <div class="wy-nav-content">
        
        <div class="rst-content">
        
          















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="index.html">Docs</a> &raquo;</li>
        
          <li><a href="apache_beam.metrics.html">apache_beam.metrics package</a> &raquo;</li>
        
      <li>apache_beam.metrics.monitoring_infos module</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="_sources/apache_beam.metrics.monitoring_infos.rst.txt" rel="nofollow"> View page source</a>
          
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="module-apache_beam.metrics.monitoring_infos">
<span id="apache-beam-metrics-monitoring-infos-module"></span><h1>apache_beam.metrics.monitoring_infos module<a class="headerlink" href="#module-apache_beam.metrics.monitoring_infos" title="Permalink to this headline">¶</a></h1>
<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.extract_counter_value">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">extract_counter_value</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#extract_counter_value"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.extract_counter_value" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the counter value of the monitoring info.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.extract_gauge_value">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">extract_gauge_value</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#extract_gauge_value"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.extract_gauge_value" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a tuple containing (timestamp, value)</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.extract_distribution">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">extract_distribution</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#extract_distribution"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.extract_distribution" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a tuple of (count, sum, min, max).</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>proto</strong> – The monitoring info for the distribution.</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.create_labels">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">create_labels</code><span class="sig-paren">(</span><em>ptransform=None</em>, <em>namespace=None</em>, <em>name=None</em>, <em>pcollection=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#create_labels"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.create_labels" title="Permalink to this definition">¶</a></dt>
<dd><p>Create the label dictionary based on the provided values.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
<li><strong>pcollection</strong> – The pcollection id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.int64_user_counter">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">int64_user_counter</code><span class="sig-paren">(</span><em>namespace</em>, <em>name</em>, <em>metric</em>, <em>ptransform=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#int64_user_counter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.int64_user_counter" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the counter monitoring info for the specifed URN, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>urn</strong> – The URN of the monitoring info/metric.</li>
<li><strong>metric</strong> – The payload field to use in the monitoring info or an int value.</li>
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.int64_counter">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">int64_counter</code><span class="sig-paren">(</span><em>urn</em>, <em>metric</em>, <em>ptransform=None</em>, <em>pcollection=None</em>, <em>labels=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#int64_counter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.int64_counter" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the counter monitoring info for the specifed URN, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>urn</strong> – The URN of the monitoring info/metric.</li>
<li><strong>metric</strong> – The payload field to use in the monitoring info or an int value.</li>
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
<li><strong>pcollection</strong> – The pcollection id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.int64_user_distribution">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">int64_user_distribution</code><span class="sig-paren">(</span><em>namespace</em>, <em>name</em>, <em>metric</em>, <em>ptransform=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#int64_user_distribution"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.int64_user_distribution" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the distribution monitoring info for the URN, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>urn</strong> – The URN of the monitoring info/metric.</li>
<li><strong>metric</strong> – The DistributionData for the metric.</li>
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.int64_distribution">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">int64_distribution</code><span class="sig-paren">(</span><em>urn</em>, <em>metric</em>, <em>ptransform=None</em>, <em>pcollection=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#int64_distribution"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.int64_distribution" title="Permalink to this definition">¶</a></dt>
<dd><p>Return a distribution monitoring info for the URN, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>urn</strong> – The URN of the monitoring info/metric.</li>
<li><strong>metric</strong> – The DistributionData for the metric.</li>
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
<li><strong>pcollection</strong> – The pcollection id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.int64_user_gauge">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">int64_user_gauge</code><span class="sig-paren">(</span><em>namespace</em>, <em>name</em>, <em>metric</em>, <em>ptransform=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#int64_user_gauge"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.int64_user_gauge" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the gauge monitoring info for the URN, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>namespace</strong> – User-defined namespace of counter.</li>
<li><strong>name</strong> – Name of counter.</li>
<li><strong>metric</strong> – The GaugeData containing the metrics.</li>
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.int64_gauge">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">int64_gauge</code><span class="sig-paren">(</span><em>urn</em>, <em>metric</em>, <em>ptransform=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#int64_gauge"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.int64_gauge" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the gauge monitoring info for the URN, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>urn</strong> – The URN of the monitoring info/metric.</li>
<li><strong>metric</strong> – An int representing the value. The current time will be used for
the timestamp.</li>
<li><strong>ptransform</strong> – The ptransform id used as a label.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.create_monitoring_info">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">create_monitoring_info</code><span class="sig-paren">(</span><em>urn</em>, <em>type_urn</em>, <em>payload</em>, <em>labels=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#create_monitoring_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.create_monitoring_info" title="Permalink to this definition">¶</a></dt>
<dd><p>Return the gauge monitoring info for the URN, type, metric and labels.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>urn</strong> – The URN of the monitoring info/metric.</li>
<li><strong>type_urn</strong> – The URN of the type of the monitoring info/metric.
i.e. beam:metrics:sum_int_64, beam:metrics:latest_int_64.</li>
<li><strong>payload</strong> – The payload field to use in the monitoring info.</li>
<li><strong>labels</strong> – The label dictionary to use in the MonitoringInfo.</li>
</ul>
</td>
</tr>
</tbody>
</table>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.is_counter">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">is_counter</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#is_counter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.is_counter" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns true if the monitoring info is a coutner metric.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.is_gauge">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">is_gauge</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#is_gauge"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.is_gauge" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns true if the monitoring info is a gauge metric.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.is_distribution">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">is_distribution</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#is_distribution"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.is_distribution" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns true if the monitoring info is a distrbution metric.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.is_user_monitoring_info">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">is_user_monitoring_info</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#is_user_monitoring_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.is_user_monitoring_info" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns true if the monitoring info is a user metric.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.extract_metric_result_map_value">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">extract_metric_result_map_value</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#extract_metric_result_map_value"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.extract_metric_result_map_value" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the relevant GaugeResult, DistributionResult or int value.</p>
<p>These are the proper format for use in the MetricResult.query() result.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.parse_namespace_and_name">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">parse_namespace_and_name</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#parse_namespace_and_name"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.parse_namespace_and_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the (namespace, name) tuple of the URN in the monitoring info.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.get_step_name">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">get_step_name</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#get_step_name"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.get_step_name" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a step name for the given monitoring info or None if step name
cannot be specified.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.to_key">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">to_key</code><span class="sig-paren">(</span><em>monitoring_info_proto</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#to_key"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.to_key" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a key based on the URN and labels.</p>
<p>This is useful in maps to prevent reporting the same MonitoringInfo twice.</p>
</dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.sum_payload_combiner">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">sum_payload_combiner</code><span class="sig-paren">(</span><em>payload_a</em>, <em>payload_b</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#sum_payload_combiner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.sum_payload_combiner" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.distribution_payload_combiner">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">distribution_payload_combiner</code><span class="sig-paren">(</span><em>payload_a</em>, <em>payload_b</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#distribution_payload_combiner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.distribution_payload_combiner" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

<dl class="function">
<dt id="apache_beam.metrics.monitoring_infos.consolidate">
<code class="descclassname">apache_beam.metrics.monitoring_infos.</code><code class="descname">consolidate</code><span class="sig-paren">(</span><em>metrics</em>, <em>key=&lt;function to_key&gt;</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/metrics/monitoring_infos.html#consolidate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.metrics.monitoring_infos.consolidate" title="Permalink to this definition">¶</a></dt>
<dd></dd></dl>

</div>


           </div>
           
          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="apache_beam.ml.html" class="btn btn-neutral float-right" title="apache_beam.ml package" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="apache_beam.metrics.metricbase.html" class="btn btn-neutral float-left" title="apache_beam.metrics.metricbase module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright 

    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  


  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script>

  
  
    
   

</body>
</html>