@@ -32,38 +32,54 @@ def test_manually_start_runtime_metrics(run_python_code_in_subprocess):
3232 out , err , status , pid = run_python_code_in_subprocess (
3333 """
3434from ddtrace.runtime import RuntimeMetrics
35- RuntimeMetrics.enable()
3635
37- from ddtrace.internal.runtime.runtime_metrics import RuntimeWorker
38- assert RuntimeWorker._instance is not None
36+ RuntimeMetrics.enable()
37+ assert RuntimeMetrics._enabled
3938
4039RuntimeMetrics.disable()
41- assert RuntimeWorker._instance is None
40+ assert not RuntimeMetrics._enabled
4241""" ,
4342 )
44-
4543 assert status == 0
4644
4745
48- def test_start_runtime_metrics_via_env_var (ddtrace_run_python_code_in_subprocess ):
46+ def test_start_runtime_metrics_via_env_var (monkeypatch , ddtrace_run_python_code_in_subprocess ):
4947 """
5048 When running with ddtrace-run and DD_RUNTIME_METRICS_ENABLED is set
5149 Runtime metrics worker starts and there are no errors
5250 """
5351
5452 _ , _ , status , _ = ddtrace_run_python_code_in_subprocess (
5553 """
56- from ddtrace.internal. runtime.runtime_metrics import RuntimeWorker
57- assert RuntimeWorker._instance is None
54+ from ddtrace.runtime import RuntimeMetrics
55+ assert not RuntimeMetrics._enabled
5856"""
5957 )
6058 assert status == 0
6159
60+ monkeypatch .setenv ("DD_RUNTIME_METRICS_ENABLED" , "true" )
6261 _ , _ , status , _ = ddtrace_run_python_code_in_subprocess (
6362 """
64- from ddtrace.internal.runtime.runtime_metrics import RuntimeWorker
65- assert RuntimeWorker._instance is not None
63+ from ddtrace.runtime import RuntimeMetrics
64+ assert RuntimeMetrics._enabled
65+ """ ,
66+ )
67+ assert status == 0
68+
69+
70+ def test_runtime_metrics_via_env_var_manual_start (monkeypatch , ddtrace_run_python_code_in_subprocess ):
71+ """
72+ When running with ddtrace-run and DD_RUNTIME_METRICS_ENABLED is set and trying to start RuntimeMetrics manually
73+ Runtime metrics worker starts and there are no errors
74+ """
75+
76+ monkeypatch .setenv ("DD_RUNTIME_METRICS_ENABLED" , "true" )
77+ _ , _ , status , _ = ddtrace_run_python_code_in_subprocess (
78+ """
79+ from ddtrace.runtime import RuntimeMetrics
80+ assert RuntimeMetrics._enabled
81+ RuntimeMetrics.enable()
82+ assert RuntimeMetrics._enabled
6683""" ,
67- env = {"DD_RUNTIME_METRICS_ENABLED" : "true" },
6884 )
6985 assert status == 0
0 commit comments