Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7ea6b7c

Browse files
authored
fix: use debug logging level for OpenTelemetry message (#442)
* fix: use debug logging level for OpenTelemetry message* only warn at span creation time* add unit test for skipping warning* refactor: rename _warned_telemetry to indicate private and mutable
1 parentfb3ad76 commit7ea6b7c

File tree

2 files changed

+24
-7
lines changed

2 files changed

+24
-7
lines changed

‎google/cloud/bigquery/opentelemetry_tracing.py‎

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,11 @@
2323
fromopentelemetry.trace.statusimportStatus
2424

2525
HAS_OPENTELEMETRY=True
26+
_warned_telemetry=True
2627

2728
exceptImportError:
28-
logger.info(
29-
"This service is instrumented using OpenTelemetry. "
30-
"OpenTelemetry could not be imported; please "
31-
"add opentelemetry-api and opentelemetry-instrumentation "
32-
"packages in order to get BigQuery Tracing data."
33-
)
34-
3529
HAS_OPENTELEMETRY=False
30+
_warned_telemetry=False
3631

3732
_default_attributes= {
3833
"db.system":"BigQuery"
@@ -64,8 +59,18 @@ def create_span(name, attributes=None, client=None, job_ref=None):
6459
Raised if a span could not be yielded or issue with call to
6560
OpenTelemetry.
6661
"""
62+
global_warned_telemetry
6763
final_attributes=_get_final_span_attributes(attributes,client,job_ref)
6864
ifnotHAS_OPENTELEMETRY:
65+
ifnot_warned_telemetry:
66+
logger.debug(
67+
"This service is instrumented using OpenTelemetry. "
68+
"OpenTelemetry could not be imported; please "
69+
"add opentelemetry-api and opentelemetry-instrumentation "
70+
"packages in order to get BigQuery Tracing data."
71+
)
72+
_warned_telemetry=True
73+
6974
yieldNone
7075
return
7176
tracer=trace.get_tracer(__name__)

‎tests/unit/test_opentelemetry_tracing.py‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,20 @@ def setup():
5252
deftest_opentelemetry_not_installed(setup,monkeypatch):
5353
monkeypatch.setitem(sys.modules,"opentelemetry",None)
5454
importlib.reload(opentelemetry_tracing)
55+
assertnotopentelemetry_tracing._warned_telemetry
5556
withopentelemetry_tracing.create_span("No-op for opentelemetry")asspan:
5657
assertspanisNone
58+
assertopentelemetry_tracing._warned_telemetry
59+
60+
61+
@pytest.mark.skipif(opentelemetryisNone,reason="Require `opentelemetry`")
62+
deftest_opentelemetry_not_installed_doesnt_warn(setup,monkeypatch):
63+
monkeypatch.setitem(sys.modules,"opentelemetry",None)
64+
importlib.reload(opentelemetry_tracing)
65+
opentelemetry_tracing._warned_telemetry=True
66+
withopentelemetry_tracing.create_span("No-op for opentelemetry")asspan:
67+
assertspanisNone
68+
assertopentelemetry_tracing._warned_telemetry
5769

5870

5971
@pytest.mark.skipif(opentelemetryisNone,reason="Require `opentelemetry`")

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp