github.com/apache/beam/sdks/v2@v2.48.2/python/apache_beam/metrics/execution.pxd (about)

     1  #
     2  # Licensed to the Apache Software Foundation (ASF) under one or more
     3  # contributor license agreements.  See the NOTICE file distributed with
     4  # this work for additional information regarding copyright ownership.
     5  # The ASF licenses this file to You under the Apache License, Version 2.0
     6  # (the "License"); you may not use this file except in compliance with
     7  # the License.  You may obtain a copy of the License at
     8  #
     9  #    http://www.apache.org/licenses/LICENSE-2.0
    10  #
    11  # Unless required by applicable law or agreed to in writing, software
    12  # distributed under the License is distributed on an "AS IS" BASIS,
    13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  # See the License for the specific language governing permissions and
    15  # limitations under the License.
    16  #
    17  
    18  cimport cython
    19  cimport libc.stdint
    20  
    21  from apache_beam.metrics.cells cimport MetricCell
    22  
    23  cdef object get_current_tracker
    24  
    25  
    26  cdef class _TypedMetricName(object):
    27    cdef readonly object cell_type
    28    cdef readonly object metric_name
    29    cdef readonly object fast_name
    30    cdef libc.stdint.int64_t _hash
    31  
    32  
    33  cdef object _DEFAULT
    34  
    35  
    36  cdef class MetricUpdater(object):
    37    cdef _TypedMetricName typed_metric_name
    38    cdef object default_value
    39    cdef bint process_wide  # bint is used to represent C++ bool.
    40  
    41  
    42  cdef class MetricsContainer(object):
    43    cdef object step_name
    44    cdef object lock
    45    cdef public dict metrics
    46    cpdef MetricCell get_metric_cell(self, metric_key)