Exemple #1
0
    def test_patch_references(self):
        self.assertEqual(len(TornadoInstrumentor().patched_handlers), 0)

        self.fetch("/")
        self.fetch("/async")
        self.assertEqual(TornadoInstrumentor().patched_handlers,
                         [MainHandler, AsyncHandler])

        self.fetch("/async")
        self.fetch("/")
        self.assertEqual(TornadoInstrumentor().patched_handlers,
                         [MainHandler, AsyncHandler])

        TornadoInstrumentor().uninstrument()
        self.assertEqual(TornadoInstrumentor().patched_handlers, [])
 def setUp(self):
     TornadoInstrumentor().instrument(
         server_request_hook=getattr(self, "server_request_hook", None),
         client_request_hook=getattr(self, "client_request_hook", None),
         client_response_hook=getattr(self, "client_response_hook", None),
     )
     super().setUp()
     # pylint: disable=protected-access
     self.env_patch = patch.dict(
         "os.environ",
         {
             "OTEL_PYTHON_TORNADO_EXCLUDED_URLS": "healthz,ping",
             "OTEL_PYTHON_TORNADO_TRACED_REQUEST_ATTRS": "uri,full_url,query",
         },
     )
     self.env_patch.start()
     self.exclude_patch = patch(
         "opentelemetry.instrumentation.tornado._excluded_urls",
         get_excluded_urls("TORNADO"),
     )
     self.traced_patch = patch(
         "opentelemetry.instrumentation.tornado._traced_request_attrs",
         get_traced_request_attrs("TORNADO"),
     )
     self.exclude_patch.start()
     self.traced_patch.start()
Exemple #3
0
    def test_uninstrument(self):
        response = self.fetch("/")
        self.assertEqual(response.code, 201)
        spans = self.memory_exporter.get_finished_spans()
        self.assertEqual(len(spans), 3)
        manual, server, client = self.sorted_spans(spans)
        self.assertEqual(manual.name, "manual")
        self.assertEqual(server.name, "MainHandler.get")
        self.assertEqual(client.name, "GET")
        self.memory_exporter.clear()

        TornadoInstrumentor().uninstrument()

        response = self.fetch("/")
        self.assertEqual(response.code, 201)
        spans = self.memory_exporter.get_finished_spans()
        self.assertEqual(len(spans), 1)
        manual = spans[0]
        self.assertEqual(manual.name, "manual")
Exemple #4
0
 def setUp(self):
     TornadoInstrumentor().instrument()
     super().setUp()
     # pylint: disable=protected-access
     Configuration()._reset()
     self.env_patch = patch.dict(
         "os.environ",
         {
             "OTEL_PYTHON_TORNADO_EXCLUDED_URLS": "healthz,ping",
             "OTEL_PYTHON_TORNADO_TRACED_REQUEST_ATTRS":
             "uri,full_url,query",
         },
     )
     self.env_patch.start()
     self.exclude_patch = patch(
         "opentelemetry.instrumentation.tornado._excluded_urls",
         Configuration()._excluded_urls("tornado"),
     )
     self.traced_patch = patch(
         "opentelemetry.instrumentation.tornado._traced_attrs",
         Configuration()._traced_request_attrs("tornado"),
     )
     self.exclude_patch.start()
     self.traced_patch.start()
Exemple #5
0
 def tearDown(self):
     TornadoInstrumentor().uninstrument()
     super().tearDown()
Exemple #6
0
 def setUp(self):
     TornadoInstrumentor().instrument()
     super().setUp()
 def tearDown(self):
     TornadoInstrumentor().uninstrument()
     self.env_patch.stop()
     self.exclude_patch.stop()
     self.traced_patch.stop()
     super().tearDown()