def test_traced_text_error(self):
tracer = DummyTracer()
sqlalchemy_opentracing.init_tracing(tracer, False, False)
sqlalchemy_opentracing.register_engine(self.engine)
session = self.session
span = DummySpan('parent span')
sqlalchemy_opentracing.set_parent_span(session, span)
try:
session.execute('SELECT zipcode FROM addresses')
except OperationalError:
pass
self.assertEqual(1, len(tracer.spans))
self.assertEqual(tracer.spans[0].operation_name, 'textclause')
self.assertEqual(tracer.spans[0].is_finished, True)
self.assertEqual(tracer.spans[0].child_of, span)
self.assertEqual(tracer.spans[0].tags, {
'component': 'sqlalchemy',
'db.statement': 'SELECT zipcode FROM addresses',
'db.type': 'sql',
'sqlalchemy.dialect': 'sqlite',
'sqlalchemy.exception': 'no such table: addresses',
'error': 'true',
})
评论列表
文章目录