Skip to content

Commit e4a5b54

Browse files
xrmxlzchen
andauthored
scripts/generate_instrumentation_bootstrap: don't force genai instrumentations versions (#3278)
* scripts/generate_instrumentation_bootstrap: don't force genai instrumentations versions Since genai instrumentations are released on their own we cannot have a fixed required version on this side. While at it add vertexai to the list of excluded packages since: - it has not been released yet - the name is already claimed by openllmetry * Regenerate bootstrap_gen * Please spellcheck --------- Co-authored-by: Leighton Chen <[email protected]>
1 parent b5a0ee5 commit e4a5b54

File tree

3 files changed

+23
-13
lines changed

3 files changed

+23
-13
lines changed

opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@
1818
libraries = [
1919
{
2020
"library": "openai >= 1.26.0",
21-
"instrumentation": "opentelemetry-instrumentation-openai-v2==2.2b0.dev",
22-
},
23-
{
24-
"library": "google-cloud-aiplatform >= 1.64",
25-
"instrumentation": "opentelemetry-instrumentation-vertexai==2.1b0.dev",
21+
"instrumentation": "opentelemetry-instrumentation-openai-v2",
2622
},
2723
{
2824
"library": "aio_pika >= 7.2.0, < 10.0.0",

scripts/generate_instrumentation_bootstrap.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,25 @@
6060
# See https://github.com/open-telemetry/opentelemetry-python-contrib/issues/2787
6161
packages_to_exclude = [
6262
"opentelemetry-instrumentation-aws-lambda",
63+
"opentelemetry-instrumentation-vertexai", # not released yet
64+
]
65+
66+
# We should not put any version limit for instrumentations that are released independently
67+
unversioned_packages = [
68+
"opentelemetry-instrumentation-openai-v2",
69+
"opentelemetry-instrumentation-vertexai",
6370
]
6471

6572

6673
def main():
6774
# pylint: disable=no-member
6875
default_instrumentations = ast.List(elts=[])
6976
libraries = ast.List(elts=[])
70-
for pkg in get_instrumentation_packages():
71-
if pkg.get("name") in packages_to_exclude:
77+
for pkg in get_instrumentation_packages(
78+
unversioned_packages=unversioned_packages
79+
):
80+
pkg_name = pkg.get("name")
81+
if pkg_name in packages_to_exclude:
7282
continue
7383
if not pkg["instruments"]:
7484
default_instrumentations.elts.append(ast.Str(pkg["requirement"]))

scripts/otel_packaging.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@
2424
genai_instrumentations_path = os.path.join(root_path, "instrumentation-genai")
2525

2626

27-
def get_instrumentation_packages():
27+
def get_instrumentation_packages(unversioned_packages=None):
28+
unversioned_packages = unversioned_packages or []
2829
pkg_paths = []
2930
for pkg in os.listdir(instrumentations_path):
3031
pkg_path = os.path.join(instrumentations_path, pkg)
@@ -62,12 +63,15 @@ def get_instrumentation_packages():
6263
"instruments"
6364
],
6465
}
65-
instrumentation["requirement"] = "==".join(
66-
(
67-
instrumentation["name"],
68-
instrumentation["version"],
66+
if instrumentation["name"] in unversioned_packages:
67+
instrumentation["requirement"] = instrumentation["name"]
68+
else:
69+
instrumentation["requirement"] = "==".join(
70+
(
71+
instrumentation["name"],
72+
instrumentation["version"],
73+
)
6974
)
70-
)
7175
yield instrumentation
7276

7377

0 commit comments

Comments
 (0)