29
29
"""
30
30
import abc
31
31
from logging import getLogger
32
- from typing import Callable , Dict , Sequence , Tuple , Type , TypeVar
32
+ from typing import Callable , Dict , Optional , Sequence , Tuple , Type , TypeVar
33
33
34
34
from opentelemetry .util import _load_provider
35
35
@@ -195,7 +195,6 @@ class MeterProvider(abc.ABC):
195
195
def get_meter (
196
196
self ,
197
197
instrumenting_module_name : str ,
198
- stateful : bool = True ,
199
198
instrumenting_library_version : str = "" ,
200
199
) -> "Meter" :
201
200
"""Returns a `Meter` for use by the given instrumentation library.
@@ -212,12 +211,6 @@ def get_meter(
212
211
E.g., instead of ``"requests"``, use
213
212
``"opentelemetry.ext.requests"``.
214
213
215
- stateful: True/False to indicate whether the meter will be
216
- stateful. True indicates the meter computes checkpoints
217
- from over the process lifetime. False indicates the meter
218
- computes checkpoints which describe the updates of a single
219
- collection period (deltas).
220
-
221
214
instrumenting_library_version: Optional. The version string of the
222
215
instrumenting library. Usually this should be the same as
223
216
``pkg_resources.get_distribution(instrumenting_library_name).version``.
@@ -233,7 +226,6 @@ class DefaultMeterProvider(MeterProvider):
233
226
def get_meter (
234
227
self ,
235
228
instrumenting_module_name : str ,
236
- stateful : bool = True ,
237
229
instrumenting_library_version : str = "" ,
238
230
) -> "Meter" :
239
231
# pylint:disable=no-self-use,unused-argument
@@ -376,15 +368,19 @@ def unregister_observer(self, observer: "Observer") -> None:
376
368
377
369
def get_meter (
378
370
instrumenting_module_name : str ,
379
- stateful : bool = True ,
380
371
instrumenting_library_version : str = "" ,
372
+ meter_provider : Optional [MeterProvider ] = None ,
381
373
) -> "Meter" :
382
374
"""Returns a `Meter` for use by the given instrumentation library.
383
375
This function is a convenience wrapper for
384
376
opentelemetry.metrics.get_meter_provider().get_meter
377
+
378
+ If meter_provider is omitted the current configured one is used.
385
379
"""
386
- return get_meter_provider ().get_meter (
387
- instrumenting_module_name , stateful , instrumenting_library_version
380
+ if meter_provider is None :
381
+ meter_provider = get_meter_provider ()
382
+ return meter_provider .get_meter (
383
+ instrumenting_module_name , instrumenting_library_version
388
384
)
389
385
390
386
0 commit comments