14
14
# Python 3
15
15
unicode = str
16
16
17
- from functools import wraps
18
17
from threading import Lock
19
18
19
+ from .decorator import decorate
20
+
20
21
_METRIC_NAME_RE = re .compile (r'^[a-zA-Z_:][a-zA-Z0-9_:]*$' )
21
22
_METRIC_LABEL_NAME_RE = re .compile (r'^[a-zA-Z_:][a-zA-Z0-9_:]*$' )
22
23
_RESERVED_METRIC_LABEL_NAME_RE = re .compile (r'^__.*$' )
@@ -657,11 +658,10 @@ def __exit__(self, typ, value, traceback):
657
658
self ._histogram .observe (max (time .time () - self ._start , 0 ))
658
659
659
660
def __call__ (self , f ):
660
- @wraps (f )
661
- def wrapped (* args , ** kwargs ):
661
+ def wrapped (func , * args , ** kwargs ):
662
662
with self :
663
- return f (* args , ** kwargs )
664
- return wrapped
663
+ return func (* args , ** kwargs )
664
+ return decorate ( f , wrapped )
665
665
666
666
667
667
class _ExceptionCounter (object ):
@@ -677,11 +677,10 @@ def __exit__(self, typ, value, traceback):
677
677
self ._counter .inc ()
678
678
679
679
def __call__ (self , f ):
680
- @wraps (f )
681
- def wrapped (* args , ** kwargs ):
680
+ def wrapped (func , * args , ** kwargs ):
682
681
with self :
683
- return f (* args , ** kwargs )
684
- return wrapped
682
+ return func (* args , ** kwargs )
683
+ return decorate ( f , wrapped )
685
684
686
685
687
686
class _InprogressTracker (object ):
@@ -695,11 +694,10 @@ def __exit__(self, typ, value, traceback):
695
694
self ._gauge .dec ()
696
695
697
696
def __call__ (self , f ):
698
- @wraps (f )
699
- def wrapped (* args , ** kwargs ):
697
+ def wrapped (func , * args , ** kwargs ):
700
698
with self :
701
- return f (* args , ** kwargs )
702
- return wrapped
699
+ return func (* args , ** kwargs )
700
+ return decorate ( f , wrapped )
703
701
704
702
705
703
class _SummaryTimer (object ):
@@ -714,11 +712,10 @@ def __exit__(self, typ, value, traceback):
714
712
self ._summary .observe (max (time .time () - self ._start , 0 ))
715
713
716
714
def __call__ (self , f ):
717
- @wraps (f )
718
- def wrapped (* args , ** kwargs ):
715
+ def wrapped (func , * args , ** kwargs ):
719
716
with self :
720
- return f (* args , ** kwargs )
721
- return wrapped
717
+ return func (* args , ** kwargs )
718
+ return decorate ( f , wrapped )
722
719
723
720
724
721
class _GaugeTimer (object ):
@@ -733,8 +730,7 @@ def __exit__(self, typ, value, traceback):
733
730
self ._gauge .set (max (time .time () - self ._start , 0 ))
734
731
735
732
def __call__ (self , f ):
736
- @wraps (f )
737
- def wrapped (* args , ** kwargs ):
733
+ def wrapped (func , * args , ** kwargs ):
738
734
with self :
739
- return f (* args , ** kwargs )
740
- return wrapped
735
+ return func (* args , ** kwargs )
736
+ return decorate ( f , wrapped )
0 commit comments