@@ -40,6 +40,8 @@ def tearDown(self):
40
40
os .environ .pop ("INSTANA_ZONE" )
41
41
if "INSTANA_TAGS" in os .environ :
42
42
os .environ .pop ("INSTANA_TAGS" )
43
+ if "INSTANA_DISABLE_METRICS_COLLECTION" in os .environ :
44
+ os .environ .pop ("INSTANA_DISABLE_METRICS_COLLECTION" )
43
45
44
46
set_agent (self .original_agent )
45
47
set_tracer (self .original_tracer )
@@ -55,17 +57,17 @@ def test_prepare_payload_basics(self):
55
57
self .create_agent_and_setup_tracer ()
56
58
57
59
payload = self .agent .collector .prepare_payload ()
58
- assert (payload )
59
-
60
- assert (len (payload .keys ()) == 3 )
61
- assert ('spans' in payload )
62
- assert (isinstance (payload ['spans' ], list ))
63
- assert (len (payload ['spans' ]) == 0 )
64
- assert ('metrics' in payload )
65
- assert (len (payload ['metrics' ].keys ()) == 1 )
66
- assert ('plugins' in payload ['metrics' ])
67
- assert (isinstance (payload ['metrics' ]['plugins' ], list ))
68
- assert (len (payload ['metrics' ]['plugins' ]) == 1 )
60
+ assert (payload )
61
+
62
+ assert (len (payload .keys ()) == 3 )
63
+ assert ('spans' in payload )
64
+ assert (isinstance (payload ['spans' ], list ))
65
+ assert (len (payload ['spans' ]) == 0 )
66
+ assert ('metrics' in payload )
67
+ assert (len (payload ['metrics' ].keys ()) == 1 )
68
+ assert ('plugins' in payload ['metrics' ])
69
+ assert (isinstance (payload ['metrics' ]['plugins' ], list ))
70
+ assert (len (payload ['metrics' ]['plugins' ]) == 1 )
69
71
70
72
python_plugin = payload ['metrics' ]['plugins' ][0 ]
71
73
assert python_plugin ['name' ] == 'com.instana.plugin.python'
@@ -113,7 +115,7 @@ def test_prepare_payload_basics(self):
113
115
assert type (python_plugin ['data' ]['metrics' ]['dummy_threads' ]) in [float , int ]
114
116
assert 'daemon_threads' in python_plugin ['data' ]['metrics' ]
115
117
assert type (python_plugin ['data' ]['metrics' ]['daemon_threads' ]) in [float , int ]
116
-
118
+
117
119
assert 'gc' in python_plugin ['data' ]['metrics' ]
118
120
assert isinstance (python_plugin ['data' ]['metrics' ]['gc' ], dict )
119
121
assert 'collect0' in python_plugin ['data' ]['metrics' ]['gc' ]
@@ -128,3 +130,27 @@ def test_prepare_payload_basics(self):
128
130
assert type (python_plugin ['data' ]['metrics' ]['gc' ]['threshold1' ]) in [float , int ]
129
131
assert 'threshold2' in python_plugin ['data' ]['metrics' ]['gc' ]
130
132
assert type (python_plugin ['data' ]['metrics' ]['gc' ]['threshold2' ]) in [float , int ]
133
+
134
+ def test_prepare_payload_basics_disable_runtime_metrics (self ):
135
+ os .environ ["INSTANA_DISABLE_METRICS_COLLECTION" ] = "TRUE"
136
+ self .create_agent_and_setup_tracer ()
137
+
138
+ payload = self .agent .collector .prepare_payload ()
139
+ assert (payload )
140
+
141
+ assert (len (payload .keys ()) == 3 )
142
+ assert ('spans' in payload )
143
+ assert (isinstance (payload ['spans' ], list ))
144
+ assert (len (payload ['spans' ]) == 0 )
145
+ assert ('metrics' in payload )
146
+ assert (len (payload ['metrics' ].keys ()) == 1 )
147
+ assert ('plugins' in payload ['metrics' ])
148
+ assert (isinstance (payload ['metrics' ]['plugins' ], list ))
149
+ assert (len (payload ['metrics' ]['plugins' ]) == 1 )
150
+
151
+ python_plugin = payload ['metrics' ]['plugins' ][0 ]
152
+ assert python_plugin ['name' ] == 'com.instana.plugin.python'
153
+ assert python_plugin ['entityId' ] == str (os .getpid ())
154
+ assert 'data' in python_plugin
155
+ assert 'snapshot' in python_plugin ['data' ]
156
+ assert 'metrics' not in python_plugin ['data' ]
0 commit comments