Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 163ba3c

Browse files
author
alrex
authored
Merge branch 'master' into sampling-result-names
2 parents 75ce5c1 + e8f5eb5 commit 163ba3c

File tree

129 files changed

+1538
-188
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

129 files changed

+1538
-188
lines changed

docs/examples/opentelemetry-example-app/setup.cfg

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,10 @@ zip_safe = False
4242
include_package_data = True
4343
install_requires =
4444
typing; python_version<'3.5'
45-
opentelemetry-api == 0.13dev0
46-
opentelemetry-sdk == 0.13dev0
47-
opentelemetry-instrumentation-requests == 0.13dev0
48-
opentelemetry-instrumentation-flask == 0.13dev0
45+
opentelemetry-api == 0.14.dev0
46+
opentelemetry-sdk == 0.14.dev0
47+
opentelemetry-instrumentation-requests == 0.14.dev0
48+
opentelemetry-instrumentation-flask == 0.14.dev0
4949
flask
5050
requests
5151
protobuf~=3.11

docs/examples/opentelemetry-example-app/src/opentelemetry_example_app/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.13dev0"
15+
__version__ = "0.14.dev0"

exporter/opentelemetry-exporter-datadog/setup.cfg

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ package_dir=
4040
packages=find_namespace:
4141
install_requires =
4242
ddtrace>=0.34.0
43-
opentelemetry-api == 0.13dev0
44-
opentelemetry-sdk == 0.13dev0
43+
opentelemetry-api == 0.14.dev0
44+
opentelemetry-sdk == 0.14.dev0
4545

4646
[options.packages.find]
4747
where = src

exporter/opentelemetry-exporter-datadog/src/opentelemetry/exporter/datadog/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.13dev0"
15+
__version__ = "0.14.dev0"

exporter/opentelemetry-exporter-jaeger/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# Changelog
22

33
## Unreleased
4+
5+
## Version 0.13b0
6+
7+
Released 2020-09-17
48
- Drop support for Python 3.4
59
([#1099](https://github.com/open-telemetry/opentelemetry-python/pull/1099))
610
- Report instrumentation info

exporter/opentelemetry-exporter-jaeger/setup.cfg

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ package_dir=
4040
packages=find_namespace:
4141
install_requires =
4242
thrift >= 0.10.0
43-
opentelemetry-api == 0.13dev0
44-
opentelemetry-sdk == 0.13dev0
43+
opentelemetry-api == 0.14.dev0
44+
opentelemetry-sdk == 0.14.dev0
4545

4646
[options.packages.find]
4747
where = src

exporter/opentelemetry-exporter-jaeger/src/opentelemetry/exporter/jaeger/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515

16-
__version__ = "0.13dev0"
16+
__version__ = "0.14.dev0"

exporter/opentelemetry-exporter-opencensus/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## Unreleased
44

5+
## Version 0.13b0
6+
7+
Released 2020-09-17
8+
59
- Drop support for Python 3.4'
610
([#1099](https://github.com/open-telemetry/opentelemetry-python/pull/1099))
711

exporter/opentelemetry-exporter-opencensus/setup.cfg

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ packages=find_namespace:
4141
install_requires =
4242
grpcio >= 1.0.0, < 2.0.0
4343
opencensus-proto >= 0.1.0, < 1.0.0
44-
opentelemetry-api == 0.13dev0
45-
opentelemetry-sdk == 0.13dev0
44+
opentelemetry-api == 0.14.dev0
45+
opentelemetry-sdk == 0.14.dev0
4646
protobuf >= 3.8.0
4747

4848
[options.packages.find]

exporter/opentelemetry-exporter-opencensus/src/opentelemetry/exporter/opencensus/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.13dev0"
15+
__version__ = "0.14.dev0"

exporter/opentelemetry-exporter-otlp/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,16 @@
22

33
## Unreleased
44

5+
## Version 0.13b0
6+
7+
Released 2020-09-17
8+
59
- Add instrumentation info to exported spans
610
([#1095](https://github.com/open-telemetry/opentelemetry-python/pull/1095))
711
- Add metric OTLP exporter
812
([#835](https://github.com/open-telemetry/opentelemetry-python/pull/835))
13+
- Add type hints to OTLP exporter
14+
([#1121](https://github.com/open-telemetry/opentelemetry-python/pull/1121))
915

1016
## Version 0.12b0
1117

exporter/opentelemetry-exporter-otlp/setup.cfg

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ packages=find_namespace:
4141
install_requires =
4242
grpcio >= 1.0.0, < 2.0.0
4343
googleapis-common-protos ~= 1.52.0
44-
opentelemetry-api == 0.13dev0
45-
opentelemetry-sdk == 0.13dev0
46-
opentelemetry-proto == 0.13dev0
44+
opentelemetry-api == 0.14.dev0
45+
opentelemetry-sdk == 0.14.dev0
46+
opentelemetry-proto == 0.14.dev0
4747
backoff ~= 1.10.0
4848

4949
[options.extras_require]

exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/exporter.py

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818
from abc import ABC, abstractmethod
1919
from collections.abc import Mapping, Sequence
2020
from time import sleep
21+
from typing import Any, Callable, Dict, Generic, List, Optional
22+
from typing import Sequence as TypingSequence
23+
from typing import Text, Tuple, TypeVar
2124

2225
from backoff import expo
2326
from google.rpc.error_details_pb2 import RetryInfo
@@ -31,11 +34,17 @@
3134

3235
from opentelemetry.proto.common.v1.common_pb2 import AnyValue, KeyValue
3336
from opentelemetry.proto.resource.v1.resource_pb2 import Resource
37+
from opentelemetry.sdk.resources import Resource as SDKResource
3438

3539
logger = logging.getLogger(__name__)
40+
SDKDataT = TypeVar("SDKDataT")
41+
ResourceDataT = TypeVar("ResourceDataT")
42+
TypingResourceT = TypeVar("TypingResourceT")
43+
ExportServiceRequestT = TypeVar("ExportServiceRequestT")
44+
ExportResultT = TypeVar("ExportResultT")
3645

3746

38-
def _translate_key_values(key, value):
47+
def _translate_key_values(key: Text, value: Any) -> KeyValue:
3948

4049
if isinstance(value, bool):
4150
any_value = AnyValue(bool_value=value)
@@ -64,8 +73,12 @@ def _translate_key_values(key, value):
6473

6574

6675
def _get_resource_data(
67-
sdk_resource_instrumentation_library_data, resource_class, name
68-
):
76+
sdk_resource_instrumentation_library_data: Dict[
77+
SDKResource, ResourceDataT
78+
],
79+
resource_class: Callable[..., TypingResourceT],
80+
name: str,
81+
) -> List[TypingResourceT]:
6982

7083
resource_data = []
7184

@@ -101,7 +114,9 @@ def _get_resource_data(
101114

102115

103116
# pylint: disable=no-member
104-
class OTLPExporterMixin(ABC):
117+
class OTLPExporterMixin(
118+
ABC, Generic[SDKDataT, ExportServiceRequestT, ExportResultT]
119+
):
105120
"""OTLP span/metric exporter
106121
107122
Args:
@@ -114,7 +129,7 @@ def __init__(
114129
self,
115130
endpoint: str = "localhost:55680",
116131
credentials: ChannelCredentials = None,
117-
metadata: tuple = None,
132+
metadata: Optional[Tuple[Any]] = None,
118133
):
119134
super().__init__()
120135

@@ -127,10 +142,12 @@ def __init__(
127142
self._client = self._stub(secure_channel(endpoint, credentials))
128143

129144
@abstractmethod
130-
def _translate_data(self, data):
145+
def _translate_data(
146+
self, data: TypingSequence[SDKDataT]
147+
) -> ExportServiceRequestT:
131148
pass
132149

133-
def _export(self, data):
150+
def _export(self, data: TypingSequence[SDKDataT]) -> ExportResultT:
134151
# expo returns a generator that yields delay values which grow
135152
# exponentially. Once delay is greater than max_value, the yielded
136153
# value will remain constant.
@@ -190,5 +207,5 @@ def _export(self, data):
190207

191208
return self._result.FAILURE
192209

193-
def shutdown(self):
210+
def shutdown(self) -> None:
194211
pass

exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/metrics_exporter/__init__.py

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@
1515
"""OTLP Metrics Exporter"""
1616

1717
import logging
18-
from typing import Sequence
18+
from typing import List, Sequence, Type, TypeVar, Union
1919

2020
# pylint: disable=duplicate-code
2121
from opentelemetry.exporter.otlp.exporter import (
2222
OTLPExporterMixin,
2323
_get_resource_data,
2424
)
25+
from opentelemetry.metrics import InstrumentT
2526
from opentelemetry.proto.collector.metrics.v1.metrics_service_pb2 import (
2627
ExportMetricsServiceRequest,
2728
)
@@ -41,24 +42,27 @@
4142
MetricDescriptor,
4243
ResourceMetrics,
4344
)
44-
from opentelemetry.sdk.metrics import Counter
45-
from opentelemetry.sdk.metrics import Metric as SDKMetric
4645
from opentelemetry.sdk.metrics import (
46+
Counter,
4747
SumObserver,
4848
UpDownCounter,
4949
UpDownSumObserver,
5050
ValueObserver,
5151
ValueRecorder,
5252
)
5353
from opentelemetry.sdk.metrics.export import (
54+
MetricRecord,
5455
MetricsExporter,
5556
MetricsExportResult,
5657
)
5758

5859
logger = logging.getLogger(__name__)
60+
DataPointT = TypeVar("DataPointT", Int64DataPoint, DoubleDataPoint)
5961

6062

61-
def _get_data_points(sdk_metric, data_point_class):
63+
def _get_data_points(
64+
sdk_metric: MetricRecord, data_point_class: Type[DataPointT]
65+
) -> List[DataPointT]:
6266

6367
data_points = []
6468

@@ -89,7 +93,9 @@ def _get_data_points(sdk_metric, data_point_class):
8993
return data_points
9094

9195

92-
def _get_temporality(instrument):
96+
def _get_temporality(
97+
instrument: InstrumentT,
98+
) -> "MetricDescriptor.TemporalityValue":
9399
# pylint: disable=no-member
94100
if isinstance(instrument, (Counter, UpDownCounter)):
95101
temporality = MetricDescriptor.Temporality.DELTA
@@ -107,12 +113,12 @@ def _get_temporality(instrument):
107113
return temporality
108114

109115

110-
def _get_type(value_type):
116+
def _get_type(value_type: Union[int, float]) -> "MetricDescriptor.TypeValue":
111117
# pylint: disable=no-member
112-
if value_type is int:
118+
if value_type is int: # type: ignore[comparison-overlap]
113119
type_ = MetricDescriptor.Type.INT64
114120

115-
elif value_type is float:
121+
elif value_type is float: # type: ignore[comparison-overlap]
116122
type_ = MetricDescriptor.Type.DOUBLE
117123

118124
# FIXME What are the types that correspond with
@@ -126,7 +132,13 @@ def _get_type(value_type):
126132
return type_
127133

128134

129-
class OTLPMetricsExporter(MetricsExporter, OTLPExporterMixin):
135+
class OTLPMetricsExporter(
136+
MetricsExporter,
137+
OTLPExporterMixin[
138+
MetricRecord, ExportMetricsServiceRequest, MetricsExportResult
139+
],
140+
):
141+
# pylint: disable=unsubscriptable-object
130142
"""OTLP metrics exporter
131143
132144
Args:
@@ -138,7 +150,9 @@ class OTLPMetricsExporter(MetricsExporter, OTLPExporterMixin):
138150
_stub = MetricsServiceStub
139151
_result = MetricsExportResult
140152

141-
def _translate_data(self, data):
153+
def _translate_data(
154+
self, data: Sequence[MetricRecord]
155+
) -> ExportMetricsServiceRequest:
142156
# pylint: disable=too-many-locals,no-member
143157
# pylint: disable=attribute-defined-outside-init
144158

@@ -193,6 +207,6 @@ def _translate_data(self, data):
193207
)
194208
)
195209

196-
def export(self, metrics: Sequence[SDKMetric]) -> MetricsExportResult:
210+
def export(self, metrics: Sequence[MetricRecord]) -> MetricsExportResult:
197211
# pylint: disable=arguments-differ
198212
return self._export(metrics)

0 commit comments

Comments
 (0)