opentelemetry-instrumentation 0.39b0__py3-none-any.whl → 0.41b0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- opentelemetry/instrumentation/auto_instrumentation/_load.py +124 -0
- opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py +5 -88
- opentelemetry/instrumentation/bootstrap_gen.py +58 -46
- opentelemetry/instrumentation/environment_variables.py +10 -0
- opentelemetry/instrumentation/utils.py +1 -1
- opentelemetry/instrumentation/version.py +1 -1
- {opentelemetry_instrumentation-0.39b0.dist-info → opentelemetry_instrumentation-0.41b0.dist-info}/METADATA +7 -2
- {opentelemetry_instrumentation-0.39b0.dist-info → opentelemetry_instrumentation-0.41b0.dist-info}/RECORD +11 -10
- {opentelemetry_instrumentation-0.39b0.dist-info → opentelemetry_instrumentation-0.41b0.dist-info}/WHEEL +1 -1
- {opentelemetry_instrumentation-0.39b0.dist-info → opentelemetry_instrumentation-0.41b0.dist-info}/entry_points.txt +0 -0
- {opentelemetry_instrumentation-0.39b0.dist-info → opentelemetry_instrumentation-0.41b0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,124 @@
|
|
1
|
+
# Copyright The OpenTelemetry Authors
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
from logging import getLogger
|
16
|
+
from os import environ
|
17
|
+
|
18
|
+
from pkg_resources import iter_entry_points
|
19
|
+
|
20
|
+
from opentelemetry.instrumentation.dependencies import (
|
21
|
+
get_dist_dependency_conflicts,
|
22
|
+
)
|
23
|
+
from opentelemetry.instrumentation.distro import BaseDistro, DefaultDistro
|
24
|
+
from opentelemetry.instrumentation.environment_variables import (
|
25
|
+
OTEL_PYTHON_CONFIGURATOR,
|
26
|
+
OTEL_PYTHON_DISABLED_INSTRUMENTATIONS,
|
27
|
+
OTEL_PYTHON_DISTRO,
|
28
|
+
)
|
29
|
+
from opentelemetry.instrumentation.version import __version__
|
30
|
+
|
31
|
+
_logger = getLogger(__name__)
|
32
|
+
|
33
|
+
|
34
|
+
def _load_distro() -> BaseDistro:
|
35
|
+
distro_name = environ.get(OTEL_PYTHON_DISTRO, None)
|
36
|
+
for entry_point in iter_entry_points("opentelemetry_distro"):
|
37
|
+
try:
|
38
|
+
# If no distro is specified, use first to come up.
|
39
|
+
if distro_name is None or distro_name == entry_point.name:
|
40
|
+
distro = entry_point.load()()
|
41
|
+
if not isinstance(distro, BaseDistro):
|
42
|
+
_logger.debug(
|
43
|
+
"%s is not an OpenTelemetry Distro. Skipping",
|
44
|
+
entry_point.name,
|
45
|
+
)
|
46
|
+
continue
|
47
|
+
_logger.debug(
|
48
|
+
"Distribution %s will be configured", entry_point.name
|
49
|
+
)
|
50
|
+
return distro
|
51
|
+
except Exception as exc: # pylint: disable=broad-except
|
52
|
+
_logger.exception(
|
53
|
+
"Distribution %s configuration failed", entry_point.name
|
54
|
+
)
|
55
|
+
raise exc
|
56
|
+
return DefaultDistro()
|
57
|
+
|
58
|
+
|
59
|
+
def _load_instrumentors(distro):
|
60
|
+
package_to_exclude = environ.get(OTEL_PYTHON_DISABLED_INSTRUMENTATIONS, [])
|
61
|
+
if isinstance(package_to_exclude, str):
|
62
|
+
package_to_exclude = package_to_exclude.split(",")
|
63
|
+
# to handle users entering "requests , flask" or "requests, flask" with spaces
|
64
|
+
package_to_exclude = [x.strip() for x in package_to_exclude]
|
65
|
+
|
66
|
+
for entry_point in iter_entry_points("opentelemetry_pre_instrument"):
|
67
|
+
entry_point.load()()
|
68
|
+
|
69
|
+
for entry_point in iter_entry_points("opentelemetry_instrumentor"):
|
70
|
+
if entry_point.name in package_to_exclude:
|
71
|
+
_logger.debug(
|
72
|
+
"Instrumentation skipped for library %s", entry_point.name
|
73
|
+
)
|
74
|
+
continue
|
75
|
+
|
76
|
+
try:
|
77
|
+
conflict = get_dist_dependency_conflicts(entry_point.dist)
|
78
|
+
if conflict:
|
79
|
+
_logger.debug(
|
80
|
+
"Skipping instrumentation %s: %s",
|
81
|
+
entry_point.name,
|
82
|
+
conflict,
|
83
|
+
)
|
84
|
+
continue
|
85
|
+
|
86
|
+
# tell instrumentation to not run dep checks again as we already did it above
|
87
|
+
distro.load_instrumentor(entry_point, skip_dep_check=True)
|
88
|
+
_logger.debug("Instrumented %s", entry_point.name)
|
89
|
+
except Exception as exc: # pylint: disable=broad-except
|
90
|
+
_logger.exception("Instrumenting of %s failed", entry_point.name)
|
91
|
+
raise exc
|
92
|
+
|
93
|
+
for entry_point in iter_entry_points("opentelemetry_post_instrument"):
|
94
|
+
entry_point.load()()
|
95
|
+
|
96
|
+
|
97
|
+
def _load_configurators():
|
98
|
+
configurator_name = environ.get(OTEL_PYTHON_CONFIGURATOR, None)
|
99
|
+
configured = None
|
100
|
+
for entry_point in iter_entry_points("opentelemetry_configurator"):
|
101
|
+
if configured is not None:
|
102
|
+
_logger.warning(
|
103
|
+
"Configuration of %s not loaded, %s already loaded",
|
104
|
+
entry_point.name,
|
105
|
+
configured,
|
106
|
+
)
|
107
|
+
continue
|
108
|
+
try:
|
109
|
+
if (
|
110
|
+
configurator_name is None
|
111
|
+
or configurator_name == entry_point.name
|
112
|
+
):
|
113
|
+
entry_point.load()().configure(auto_instrumentation_version=__version__) # type: ignore
|
114
|
+
configured = entry_point.name
|
115
|
+
else:
|
116
|
+
_logger.warning(
|
117
|
+
"Configuration of %s not loaded because %s is set by %s",
|
118
|
+
entry_point.name,
|
119
|
+
configurator_name,
|
120
|
+
OTEL_PYTHON_CONFIGURATOR,
|
121
|
+
)
|
122
|
+
except Exception as exc: # pylint: disable=broad-except
|
123
|
+
_logger.exception("Configuration of %s failed", entry_point.name)
|
124
|
+
raise exc
|
@@ -16,99 +16,16 @@ from logging import getLogger
|
|
16
16
|
from os import environ
|
17
17
|
from os.path import abspath, dirname, pathsep
|
18
18
|
|
19
|
-
from
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
)
|
24
|
-
from opentelemetry.instrumentation.distro import BaseDistro, DefaultDistro
|
25
|
-
from opentelemetry.instrumentation.environment_variables import (
|
26
|
-
OTEL_PYTHON_DISABLED_INSTRUMENTATIONS,
|
19
|
+
from opentelemetry.instrumentation.auto_instrumentation._load import (
|
20
|
+
_load_configurators,
|
21
|
+
_load_distro,
|
22
|
+
_load_instrumentors,
|
27
23
|
)
|
28
24
|
from opentelemetry.instrumentation.utils import _python_path_without_directory
|
29
|
-
from opentelemetry.instrumentation.version import __version__
|
30
25
|
|
31
26
|
logger = getLogger(__name__)
|
32
27
|
|
33
28
|
|
34
|
-
def _load_distros() -> BaseDistro:
|
35
|
-
for entry_point in iter_entry_points("opentelemetry_distro"):
|
36
|
-
try:
|
37
|
-
distro = entry_point.load()()
|
38
|
-
if not isinstance(distro, BaseDistro):
|
39
|
-
logger.debug(
|
40
|
-
"%s is not an OpenTelemetry Distro. Skipping",
|
41
|
-
entry_point.name,
|
42
|
-
)
|
43
|
-
continue
|
44
|
-
logger.debug(
|
45
|
-
"Distribution %s will be configured", entry_point.name
|
46
|
-
)
|
47
|
-
return distro
|
48
|
-
except Exception as exc: # pylint: disable=broad-except
|
49
|
-
logger.exception(
|
50
|
-
"Distribution %s configuration failed", entry_point.name
|
51
|
-
)
|
52
|
-
raise exc
|
53
|
-
return DefaultDistro()
|
54
|
-
|
55
|
-
|
56
|
-
def _load_instrumentors(distro):
|
57
|
-
package_to_exclude = environ.get(OTEL_PYTHON_DISABLED_INSTRUMENTATIONS, [])
|
58
|
-
if isinstance(package_to_exclude, str):
|
59
|
-
package_to_exclude = package_to_exclude.split(",")
|
60
|
-
# to handle users entering "requests , flask" or "requests, flask" with spaces
|
61
|
-
package_to_exclude = [x.strip() for x in package_to_exclude]
|
62
|
-
|
63
|
-
for entry_point in iter_entry_points("opentelemetry_pre_instrument"):
|
64
|
-
entry_point.load()()
|
65
|
-
|
66
|
-
for entry_point in iter_entry_points("opentelemetry_instrumentor"):
|
67
|
-
if entry_point.name in package_to_exclude:
|
68
|
-
logger.debug(
|
69
|
-
"Instrumentation skipped for library %s", entry_point.name
|
70
|
-
)
|
71
|
-
continue
|
72
|
-
|
73
|
-
try:
|
74
|
-
conflict = get_dist_dependency_conflicts(entry_point.dist)
|
75
|
-
if conflict:
|
76
|
-
logger.debug(
|
77
|
-
"Skipping instrumentation %s: %s",
|
78
|
-
entry_point.name,
|
79
|
-
conflict,
|
80
|
-
)
|
81
|
-
continue
|
82
|
-
|
83
|
-
# tell instrumentation to not run dep checks again as we already did it above
|
84
|
-
distro.load_instrumentor(entry_point, skip_dep_check=True)
|
85
|
-
logger.debug("Instrumented %s", entry_point.name)
|
86
|
-
except Exception as exc: # pylint: disable=broad-except
|
87
|
-
logger.exception("Instrumenting of %s failed", entry_point.name)
|
88
|
-
raise exc
|
89
|
-
|
90
|
-
for entry_point in iter_entry_points("opentelemetry_post_instrument"):
|
91
|
-
entry_point.load()()
|
92
|
-
|
93
|
-
|
94
|
-
def _load_configurators():
|
95
|
-
configured = None
|
96
|
-
for entry_point in iter_entry_points("opentelemetry_configurator"):
|
97
|
-
if configured is not None:
|
98
|
-
logger.warning(
|
99
|
-
"Configuration of %s not loaded, %s already loaded",
|
100
|
-
entry_point.name,
|
101
|
-
configured,
|
102
|
-
)
|
103
|
-
continue
|
104
|
-
try:
|
105
|
-
entry_point.load()().configure(auto_instrumentation_version=__version__) # type: ignore
|
106
|
-
configured = entry_point.name
|
107
|
-
except Exception as exc: # pylint: disable=broad-except
|
108
|
-
logger.exception("Configuration of %s failed", entry_point.name)
|
109
|
-
raise exc
|
110
|
-
|
111
|
-
|
112
29
|
def initialize():
|
113
30
|
# prevents auto-instrumentation of subprocesses if code execs another python process
|
114
31
|
environ["PYTHONPATH"] = _python_path_without_directory(
|
@@ -116,7 +33,7 @@ def initialize():
|
|
116
33
|
)
|
117
34
|
|
118
35
|
try:
|
119
|
-
distro =
|
36
|
+
distro = _load_distro()
|
120
37
|
distro.configure()
|
121
38
|
_load_configurators()
|
122
39
|
_load_instrumentors(distro)
|
@@ -18,158 +18,170 @@
|
|
18
18
|
libraries = {
|
19
19
|
"aio_pika": {
|
20
20
|
"library": "aio_pika >= 7.2.0, < 10.0.0",
|
21
|
-
"instrumentation": "opentelemetry-instrumentation-aio-pika==0.
|
21
|
+
"instrumentation": "opentelemetry-instrumentation-aio-pika==0.41b0",
|
22
22
|
},
|
23
23
|
"aiohttp": {
|
24
24
|
"library": "aiohttp ~= 3.0",
|
25
|
-
"instrumentation": "opentelemetry-instrumentation-aiohttp-client==0.
|
25
|
+
"instrumentation": "opentelemetry-instrumentation-aiohttp-client==0.41b0",
|
26
26
|
},
|
27
27
|
"aiopg": {
|
28
28
|
"library": "aiopg >= 0.13.0, < 2.0.0",
|
29
|
-
"instrumentation": "opentelemetry-instrumentation-aiopg==0.
|
29
|
+
"instrumentation": "opentelemetry-instrumentation-aiopg==0.41b0",
|
30
30
|
},
|
31
31
|
"asgiref": {
|
32
32
|
"library": "asgiref ~= 3.0",
|
33
|
-
"instrumentation": "opentelemetry-instrumentation-asgi==0.
|
33
|
+
"instrumentation": "opentelemetry-instrumentation-asgi==0.41b0",
|
34
34
|
},
|
35
35
|
"asyncpg": {
|
36
36
|
"library": "asyncpg >= 0.12.0",
|
37
|
-
"instrumentation": "opentelemetry-instrumentation-asyncpg==0.
|
37
|
+
"instrumentation": "opentelemetry-instrumentation-asyncpg==0.41b0",
|
38
38
|
},
|
39
39
|
"boto": {
|
40
40
|
"library": "boto~=2.0",
|
41
|
-
"instrumentation": "opentelemetry-instrumentation-boto==0.
|
41
|
+
"instrumentation": "opentelemetry-instrumentation-boto==0.41b0",
|
42
42
|
},
|
43
43
|
"boto3": {
|
44
44
|
"library": "boto3 ~= 1.0",
|
45
|
-
"instrumentation": "opentelemetry-instrumentation-boto3sqs==0.
|
45
|
+
"instrumentation": "opentelemetry-instrumentation-boto3sqs==0.41b0",
|
46
46
|
},
|
47
47
|
"botocore": {
|
48
48
|
"library": "botocore ~= 1.0",
|
49
|
-
"instrumentation": "opentelemetry-instrumentation-botocore==0.
|
49
|
+
"instrumentation": "opentelemetry-instrumentation-botocore==0.41b0",
|
50
|
+
},
|
51
|
+
"cassandra-driver": {
|
52
|
+
"library": "cassandra-driver ~= 3.25",
|
53
|
+
"instrumentation": "opentelemetry-instrumentation-cassandra==0.41b0",
|
54
|
+
},
|
55
|
+
"scylla-driver": {
|
56
|
+
"library": "scylla-driver ~= 3.25",
|
57
|
+
"instrumentation": "opentelemetry-instrumentation-cassandra==0.41b0",
|
50
58
|
},
|
51
59
|
"celery": {
|
52
60
|
"library": "celery >= 4.0, < 6.0",
|
53
|
-
"instrumentation": "opentelemetry-instrumentation-celery==0.
|
61
|
+
"instrumentation": "opentelemetry-instrumentation-celery==0.41b0",
|
54
62
|
},
|
55
63
|
"confluent-kafka": {
|
56
|
-
"library": "confluent-kafka >= 1.8.2,
|
57
|
-
"instrumentation": "opentelemetry-instrumentation-confluent-kafka==0.
|
64
|
+
"library": "confluent-kafka >= 1.8.2, <= 2.2.0",
|
65
|
+
"instrumentation": "opentelemetry-instrumentation-confluent-kafka==0.41b0",
|
58
66
|
},
|
59
67
|
"django": {
|
60
68
|
"library": "django >= 1.10",
|
61
|
-
"instrumentation": "opentelemetry-instrumentation-django==0.
|
69
|
+
"instrumentation": "opentelemetry-instrumentation-django==0.41b0",
|
62
70
|
},
|
63
71
|
"elasticsearch": {
|
64
72
|
"library": "elasticsearch >= 2.0",
|
65
|
-
"instrumentation": "opentelemetry-instrumentation-elasticsearch==0.
|
73
|
+
"instrumentation": "opentelemetry-instrumentation-elasticsearch==0.41b0",
|
66
74
|
},
|
67
75
|
"falcon": {
|
68
76
|
"library": "falcon >= 1.4.1, < 4.0.0",
|
69
|
-
"instrumentation": "opentelemetry-instrumentation-falcon==0.
|
77
|
+
"instrumentation": "opentelemetry-instrumentation-falcon==0.41b0",
|
70
78
|
},
|
71
79
|
"fastapi": {
|
72
80
|
"library": "fastapi ~= 0.58",
|
73
|
-
"instrumentation": "opentelemetry-instrumentation-fastapi==0.
|
81
|
+
"instrumentation": "opentelemetry-instrumentation-fastapi==0.41b0",
|
74
82
|
},
|
75
83
|
"flask": {
|
76
84
|
"library": "flask >= 1.0, < 3.0",
|
77
|
-
"instrumentation": "opentelemetry-instrumentation-flask==0.
|
85
|
+
"instrumentation": "opentelemetry-instrumentation-flask==0.41b0",
|
78
86
|
},
|
79
87
|
"grpcio": {
|
80
88
|
"library": "grpcio ~= 1.27",
|
81
|
-
"instrumentation": "opentelemetry-instrumentation-grpc==0.
|
89
|
+
"instrumentation": "opentelemetry-instrumentation-grpc==0.41b0",
|
82
90
|
},
|
83
91
|
"httpx": {
|
84
|
-
"library": "httpx >= 0.18.0
|
85
|
-
"instrumentation": "opentelemetry-instrumentation-httpx==0.
|
92
|
+
"library": "httpx >= 0.18.0",
|
93
|
+
"instrumentation": "opentelemetry-instrumentation-httpx==0.41b0",
|
86
94
|
},
|
87
95
|
"jinja2": {
|
88
96
|
"library": "jinja2 >= 2.7, < 4.0",
|
89
|
-
"instrumentation": "opentelemetry-instrumentation-jinja2==0.
|
97
|
+
"instrumentation": "opentelemetry-instrumentation-jinja2==0.41b0",
|
90
98
|
},
|
91
99
|
"kafka-python": {
|
92
100
|
"library": "kafka-python >= 2.0",
|
93
|
-
"instrumentation": "opentelemetry-instrumentation-kafka-python==0.
|
101
|
+
"instrumentation": "opentelemetry-instrumentation-kafka-python==0.41b0",
|
94
102
|
},
|
95
103
|
"mysql-connector-python": {
|
96
104
|
"library": "mysql-connector-python ~= 8.0",
|
97
|
-
"instrumentation": "opentelemetry-instrumentation-mysql==0.
|
105
|
+
"instrumentation": "opentelemetry-instrumentation-mysql==0.41b0",
|
106
|
+
},
|
107
|
+
"mysqlclient": {
|
108
|
+
"library": "mysqlclient < 3",
|
109
|
+
"instrumentation": "opentelemetry-instrumentation-mysqlclient==0.41b0",
|
98
110
|
},
|
99
111
|
"pika": {
|
100
112
|
"library": "pika >= 0.12.0",
|
101
|
-
"instrumentation": "opentelemetry-instrumentation-pika==0.
|
113
|
+
"instrumentation": "opentelemetry-instrumentation-pika==0.41b0",
|
102
114
|
},
|
103
115
|
"psycopg2": {
|
104
116
|
"library": "psycopg2 >= 2.7.3.1",
|
105
|
-
"instrumentation": "opentelemetry-instrumentation-psycopg2==0.
|
117
|
+
"instrumentation": "opentelemetry-instrumentation-psycopg2==0.41b0",
|
106
118
|
},
|
107
119
|
"pymemcache": {
|
108
120
|
"library": "pymemcache >= 1.3.5, < 5",
|
109
|
-
"instrumentation": "opentelemetry-instrumentation-pymemcache==0.
|
121
|
+
"instrumentation": "opentelemetry-instrumentation-pymemcache==0.41b0",
|
110
122
|
},
|
111
123
|
"pymongo": {
|
112
124
|
"library": "pymongo >= 3.1, < 5.0",
|
113
|
-
"instrumentation": "opentelemetry-instrumentation-pymongo==0.
|
125
|
+
"instrumentation": "opentelemetry-instrumentation-pymongo==0.41b0",
|
114
126
|
},
|
115
127
|
"PyMySQL": {
|
116
128
|
"library": "PyMySQL < 2",
|
117
|
-
"instrumentation": "opentelemetry-instrumentation-pymysql==0.
|
129
|
+
"instrumentation": "opentelemetry-instrumentation-pymysql==0.41b0",
|
118
130
|
},
|
119
131
|
"pyramid": {
|
120
132
|
"library": "pyramid >= 1.7",
|
121
|
-
"instrumentation": "opentelemetry-instrumentation-pyramid==0.
|
133
|
+
"instrumentation": "opentelemetry-instrumentation-pyramid==0.41b0",
|
122
134
|
},
|
123
135
|
"redis": {
|
124
136
|
"library": "redis >= 2.6",
|
125
|
-
"instrumentation": "opentelemetry-instrumentation-redis==0.
|
137
|
+
"instrumentation": "opentelemetry-instrumentation-redis==0.41b0",
|
126
138
|
},
|
127
139
|
"remoulade": {
|
128
140
|
"library": "remoulade >= 0.50",
|
129
|
-
"instrumentation": "opentelemetry-instrumentation-remoulade==0.
|
141
|
+
"instrumentation": "opentelemetry-instrumentation-remoulade==0.41b0",
|
130
142
|
},
|
131
143
|
"requests": {
|
132
144
|
"library": "requests ~= 2.0",
|
133
|
-
"instrumentation": "opentelemetry-instrumentation-requests==0.
|
145
|
+
"instrumentation": "opentelemetry-instrumentation-requests==0.41b0",
|
134
146
|
},
|
135
147
|
"scikit-learn": {
|
136
148
|
"library": "scikit-learn ~= 0.24.0",
|
137
|
-
"instrumentation": "opentelemetry-instrumentation-sklearn==0.
|
149
|
+
"instrumentation": "opentelemetry-instrumentation-sklearn==0.41b0",
|
138
150
|
},
|
139
151
|
"sqlalchemy": {
|
140
152
|
"library": "sqlalchemy",
|
141
|
-
"instrumentation": "opentelemetry-instrumentation-sqlalchemy==0.
|
153
|
+
"instrumentation": "opentelemetry-instrumentation-sqlalchemy==0.41b0",
|
142
154
|
},
|
143
155
|
"starlette": {
|
144
156
|
"library": "starlette ~= 0.13.0",
|
145
|
-
"instrumentation": "opentelemetry-instrumentation-starlette==0.
|
157
|
+
"instrumentation": "opentelemetry-instrumentation-starlette==0.41b0",
|
146
158
|
},
|
147
159
|
"psutil": {
|
148
160
|
"library": "psutil >= 5",
|
149
|
-
"instrumentation": "opentelemetry-instrumentation-system-metrics==0.
|
161
|
+
"instrumentation": "opentelemetry-instrumentation-system-metrics==0.41b0",
|
150
162
|
},
|
151
163
|
"tornado": {
|
152
164
|
"library": "tornado >= 5.1.1",
|
153
|
-
"instrumentation": "opentelemetry-instrumentation-tornado==0.
|
165
|
+
"instrumentation": "opentelemetry-instrumentation-tornado==0.41b0",
|
154
166
|
},
|
155
167
|
"tortoise-orm": {
|
156
168
|
"library": "tortoise-orm >= 0.17.0",
|
157
|
-
"instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.
|
169
|
+
"instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.41b0",
|
158
170
|
},
|
159
171
|
"pydantic": {
|
160
172
|
"library": "pydantic >= 1.10.2",
|
161
|
-
"instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.
|
173
|
+
"instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.41b0",
|
162
174
|
},
|
163
175
|
"urllib3": {
|
164
|
-
"library": "urllib3 >= 1.0.0, <
|
165
|
-
"instrumentation": "opentelemetry-instrumentation-urllib3==0.
|
176
|
+
"library": "urllib3 >= 1.0.0, < 3.0.0",
|
177
|
+
"instrumentation": "opentelemetry-instrumentation-urllib3==0.41b0",
|
166
178
|
},
|
167
179
|
}
|
168
180
|
default_instrumentations = [
|
169
|
-
"opentelemetry-instrumentation-aws-lambda==0.
|
170
|
-
"opentelemetry-instrumentation-dbapi==0.
|
171
|
-
"opentelemetry-instrumentation-logging==0.
|
172
|
-
"opentelemetry-instrumentation-sqlite3==0.
|
173
|
-
"opentelemetry-instrumentation-urllib==0.
|
174
|
-
"opentelemetry-instrumentation-wsgi==0.
|
181
|
+
"opentelemetry-instrumentation-aws-lambda==0.41b0",
|
182
|
+
"opentelemetry-instrumentation-dbapi==0.41b0",
|
183
|
+
"opentelemetry-instrumentation-logging==0.41b0",
|
184
|
+
"opentelemetry-instrumentation-sqlite3==0.41b0",
|
185
|
+
"opentelemetry-instrumentation-urllib==0.41b0",
|
186
|
+
"opentelemetry-instrumentation-wsgi==0.41b0",
|
175
187
|
]
|
@@ -16,3 +16,13 @@ OTEL_PYTHON_DISABLED_INSTRUMENTATIONS = "OTEL_PYTHON_DISABLED_INSTRUMENTATIONS"
|
|
16
16
|
"""
|
17
17
|
.. envvar:: OTEL_PYTHON_DISABLED_INSTRUMENTATIONS
|
18
18
|
"""
|
19
|
+
|
20
|
+
OTEL_PYTHON_DISTRO = "OTEL_PYTHON_DISTRO"
|
21
|
+
"""
|
22
|
+
.. envvar:: OTEL_PYTHON_DISTRO
|
23
|
+
"""
|
24
|
+
|
25
|
+
OTEL_PYTHON_CONFIGURATOR = "OTEL_PYTHON_CONFIGURATOR"
|
26
|
+
"""
|
27
|
+
.. envvar:: OTEL_PYTHON_CONFIGURATOR
|
28
|
+
"""
|
@@ -95,7 +95,7 @@ def _start_internal_or_server_span(
|
|
95
95
|
|
96
96
|
Args:
|
97
97
|
tracer : tracer in use by given instrumentation library
|
98
|
-
|
98
|
+
span_name (string): name of the span
|
99
99
|
start_time : start time of the span
|
100
100
|
context_carrier : object which contains values that are
|
101
101
|
used to construct a Context. This object
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: opentelemetry-instrumentation
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.41b0
|
4
4
|
Summary: Instrumentation Tools & Auto Instrumentation for OpenTelemetry Python
|
5
5
|
Project-URL: Homepage, https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/opentelemetry-instrumentation
|
6
6
|
Author-email: OpenTelemetry Authors <cncf-opentelemetry-contributors@lists.cncf.io>
|
@@ -43,12 +43,15 @@ This package provides a couple of commands that help automatically instruments a
|
|
43
43
|
|
44
44
|
.. note::
|
45
45
|
You need to install a distro package to get auto instrumentation working. The ``opentelemetry-distro``
|
46
|
-
package contains the default distro and automatically configures some of the common options for users.
|
46
|
+
package contains the default distro and configurator and automatically configures some of the common options for users.
|
47
47
|
For more info about ``opentelemetry-distro`` check `here <https://opentelemetry-python.readthedocs.io/en/latest/examples/distro/README.html>`__
|
48
48
|
::
|
49
49
|
|
50
50
|
pip install opentelemetry-distro[otlp]
|
51
51
|
|
52
|
+
When creating a custom distro and/or configurator, be sure to add entry points for each under `opentelemetry_distro` and `opentelemetry_configurator` respectfully.
|
53
|
+
If you have entry points for multiple distros or configurators present in your environment, you should specify the entry point name of the distro and configurator you want to be used via the `OTEL_PYTHON_DISTRO` and `OTEL_PYTHON_CONFIGURATOR` environment variables.
|
54
|
+
|
52
55
|
|
53
56
|
opentelemetry-bootstrap
|
54
57
|
-----------------------
|
@@ -83,6 +86,8 @@ The command supports the following configuration options as CLI arguments and en
|
|
83
86
|
|
84
87
|
* ``--traces_exporter`` or ``OTEL_TRACES_EXPORTER``
|
85
88
|
* ``--metrics_exporter`` or ``OTEL_METRICS_EXPORTER``
|
89
|
+
* ``--distro`` or ``OTEL_PYTHON_DISTRO``
|
90
|
+
* ``--configurator`` or ``OTEL_PYTHON_CONFIGURATOR``
|
86
91
|
|
87
92
|
Used to specify which trace exporter to use. Can be set to one or more of the well-known exporter
|
88
93
|
names (see below).
|
@@ -1,18 +1,19 @@
|
|
1
1
|
opentelemetry/instrumentation/bootstrap.py,sha256=xNA7yssrCNOhkm__VoqBQbWHFETPRy_vygK9YDwtKEM,4640
|
2
|
-
opentelemetry/instrumentation/bootstrap_gen.py,sha256=
|
2
|
+
opentelemetry/instrumentation/bootstrap_gen.py,sha256=Ku2L03giLp7qdLrA4N7wBWbhEOpWfE3G1sA31MK8bsA,6837
|
3
3
|
opentelemetry/instrumentation/dependencies.py,sha256=ljJ0nMK_vNZXOiCTLOT1nM3xpwmx7LVaW_S53jcRvIY,1798
|
4
4
|
opentelemetry/instrumentation/distro.py,sha256=4TCMpJY169TiYXfaD-9suGv6310_ir_rVuMljC7CVOY,2071
|
5
|
-
opentelemetry/instrumentation/environment_variables.py,sha256=
|
5
|
+
opentelemetry/instrumentation/environment_variables.py,sha256=oRcbNSSbnqJMQ3r4gBhK6jqtuI5WizapP962Z8DrVZ8,905
|
6
6
|
opentelemetry/instrumentation/instrumentor.py,sha256=5ojnavXzk4rdML4GHWpC8QeJRwvEJKXCmInGU3Vo2Ww,4283
|
7
7
|
opentelemetry/instrumentation/propagators.py,sha256=eXw5regVrCEk5h1YOwX6Vltll6qVul5V6QIyNJri3-I,4065
|
8
8
|
opentelemetry/instrumentation/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
9
|
opentelemetry/instrumentation/sqlcommenter_utils.py,sha256=yV_-hcwy_3ckP76_FC2dOrd8IKi9z_9s980ZMuGYkrE,1960
|
10
|
-
opentelemetry/instrumentation/utils.py,sha256=
|
11
|
-
opentelemetry/instrumentation/version.py,sha256=
|
10
|
+
opentelemetry/instrumentation/utils.py,sha256=sjlV-AaB73upNPHjSKYkZkT5RyJH1a_OtdaLflI09-k,4870
|
11
|
+
opentelemetry/instrumentation/version.py,sha256=9LtSy_KpXBRCK2aaMFk3l5qiAoEDLs7boZzuBeF3mPY,608
|
12
12
|
opentelemetry/instrumentation/auto_instrumentation/__init__.py,sha256=7o-VwHQtTwzz_vaLZMHJYm9SY1PC1Xpt0aoNCxbEqXw,3804
|
13
|
-
opentelemetry/instrumentation/auto_instrumentation/
|
14
|
-
|
15
|
-
opentelemetry_instrumentation-0.
|
16
|
-
opentelemetry_instrumentation-0.
|
17
|
-
opentelemetry_instrumentation-0.
|
18
|
-
opentelemetry_instrumentation-0.
|
13
|
+
opentelemetry/instrumentation/auto_instrumentation/_load.py,sha256=RDFVxFJ2NR02i8_MFc2FJFxRQjsvjX8f1H2N7ZMF5V0,4794
|
14
|
+
opentelemetry/instrumentation/auto_instrumentation/sitecustomize.py,sha256=p3cz9NlKNlnzxc7guFSPyztx8XMUteAxkN1NFYXSH-0,1449
|
15
|
+
opentelemetry_instrumentation-0.41b0.dist-info/METADATA,sha256=uE-RUpzn6d-fiYlXIeOB74r_lMwhlkTBHBSm9QqVONI,5857
|
16
|
+
opentelemetry_instrumentation-0.41b0.dist-info/WHEEL,sha256=KGYbc1zXlYddvwxnNty23BeaKzh7YuoSIvIMO4jEhvw,87
|
17
|
+
opentelemetry_instrumentation-0.41b0.dist-info/entry_points.txt,sha256=iVv3t5REB0O58tFUEQQXYLrTCa1VVOFUXfrbvUk6_aU,279
|
18
|
+
opentelemetry_instrumentation-0.41b0.dist-info/licenses/LICENSE,sha256=h8jwqxShIeVkc8vOo9ynxGYW16f4fVPxLhZKZs0H5U8,11350
|
19
|
+
opentelemetry_instrumentation-0.41b0.dist-info/RECORD,,
|
File without changes
|
File without changes
|