blob: a07dddfc9313ec4c356abf576bff3b0bc6e187d0 (
plain) (
tree)
|
|
from libcpp cimport bool
from util.system.types cimport ui64, ui32, i64
from util.generic.ptr cimport THolder, TIntrusivePtr
from util.generic.vector cimport TVector
cdef extern from "library/cpp/monlib/metrics/histogram_collector.h" namespace "NMonitoring" nogil:
ctypedef double TBucketBound
ctypedef ui64 TBucketValue
cdef cppclass IHistogramSnapshot:
ui32 Count() const
TBucketBound UpperBound(ui32 index) const
TBucketValue Value(ui32 index) const
ctypedef TIntrusivePtr[IHistogramSnapshot] IHistogramSnapshotPtr
cdef cppclass IHistogramCollector:
void Collect(i64 value)
void Collect(i64 value, ui32 count)
IHistogramSnapshotPtr Snapshot() const
ctypedef THolder[IHistogramCollector] IHistogramCollectorPtr
IHistogramCollectorPtr ExponentialHistogram(ui32 bucketsCount, double base, double scale) except +
IHistogramCollectorPtr ExplicitHistogram(const TVector[double]& buckets) except +
IHistogramCollectorPtr LinearHistogram(ui32 bucketsCount, i64 startValue, i64 bucketWidth) except +
cdef extern from "library/cpp/monlib/metrics/metric.h" namespace "NMonitoring" nogil:
cdef cppclass TGauge:
TGauge(double value) except +
void Set(double)
double Get() const
double Add(double)
cdef cppclass TIntGauge:
TIntGauge(ui64 value) except +
void Set(ui64)
ui64 Get() const
ui64 Add(double)
ui64 Inc()
ui64 Dec()
cdef cppclass TCounter:
TCounter(ui64 value) except +
ui64 Get() const
ui64 Add(ui64)
ui64 Inc()
void Reset()
cdef cppclass TRate:
TRate(ui64 value) except +
void Add(ui64)
ui64 Get() const
void Inc()
cdef cppclass THistogram:
THistogram(IHistogramCollectorPtr collector, bool isRate) except +
void Record(double value)
void Record(double value, ui32 count)
cdef class Gauge:
cdef TGauge* __wrapped
@staticmethod
cdef Gauge from_ptr(TGauge* native)
cdef class Counter:
cdef TCounter* __wrapped
@staticmethod
cdef Counter from_ptr(TCounter* native)
cdef class Rate:
cdef TRate* __wrapped
@staticmethod
cdef Rate from_ptr(TRate* native)
cdef class IntGauge:
cdef TIntGauge* __wrapped
@staticmethod
cdef IntGauge from_ptr(TIntGauge* native)
cdef class Histogram:
cdef THistogram* __wrapped
cdef bool __is_owner
@staticmethod
cdef Histogram from_ptr(THistogram* native)
|