@@ -18,23 +18,21 @@ class MetricsBatcher:
1818
1919 def __init__ (
2020 self ,
21- capture_func , # type: Callable[[Envelope], None]
22- record_lost_func , # type: Callable[..., None]
23- ):
24- # type: (...) -> None
25- self ._metric_buffer = [] # type: List[Metric]
21+ capture_func : "Callable[[Envelope], None]" ,
22+ record_lost_func : "Callable[..., None]" ,
23+ ) -> None :
24+ self ._metric_buffer : List [Metric ] = []
2625 self ._capture_func = capture_func
2726 self ._record_lost_func = record_lost_func
2827 self ._running = True
2928 self ._lock = threading .Lock ()
3029
31- self ._flush_event = threading .Event () # type: threading.Event
30+ self ._flush_event : " threading.Event" = threading .Event ()
3231
33- self ._flusher = None # type: Optional[threading.Thread]
34- self ._flusher_pid = None # type: Optional[int]
32+ self ._flusher : " Optional[threading.Thread]" = None
33+ self ._flusher_pid : " Optional[int]" = None
3534
36- def _ensure_thread (self ):
37- # type: (...) -> bool
35+ def _ensure_thread (self ) -> bool :
3836 if not self ._running :
3937 return False
4038
@@ -59,18 +57,16 @@ def _ensure_thread(self):
5957
6058 return True
6159
62- def _flush_loop (self ):
63- # type: (...) -> None
60+ def _flush_loop (self ) -> None :
6461 while self ._running :
6562 self ._flush_event .wait (self .FLUSH_WAIT_TIME + random .random ())
6663 self ._flush_event .clear ()
6764 self ._flush ()
6865
6966 def add (
7067 self ,
71- metric , # type: Metric
72- ):
73- # type: (...) -> None
68+ metric : "Metric" ,
69+ ) -> None :
7470 if not self ._ensure_thread () or self ._flusher is None :
7571 return None
7672
@@ -87,24 +83,20 @@ def add(
8783 if len (self ._metric_buffer ) >= self .MAX_METRICS_BEFORE_FLUSH :
8884 self ._flush_event .set ()
8985
90- def kill (self ):
91- # type: (...) -> None
86+ def kill (self ) -> None :
9287 if self ._flusher is None :
9388 return
9489
9590 self ._running = False
9691 self ._flush_event .set ()
9792 self ._flusher = None
9893
99- def flush (self ):
100- # type: (...) -> None
94+ def flush (self ) -> None :
10195 self ._flush ()
10296
10397 @staticmethod
104- def _metric_to_transport_format (metric ):
105- # type: (Metric) -> Any
106- def format_attribute (val ):
107- # type: (Union[int, float, str, bool]) -> Any
98+ def _metric_to_transport_format (metric : "Metric" ) -> "Any" :
99+ def format_attribute (val : Union [int , float , str , bool ]) -> Any :
108100 if isinstance (val , bool ):
109101 return {"value" : val , "type" : "boolean" }
110102 if isinstance (val , int ):
@@ -134,9 +126,7 @@ def format_attribute(val):
134126
135127 return res
136128
137- def _flush (self ):
138- # type: (...) -> Optional[Envelope]
139-
129+ def _flush (self ) -> "Optional[Envelope]" :
140130 envelope = Envelope (
141131 headers = {"sent_at" : format_timestamp (datetime .now (timezone .utc ))}
142132 )
0 commit comments