OpenTelemetry PyMySQL Instrumentation¶
The integration with PyMySQL supports the PyMySQL library and can be enabled
by using PyMySQLInstrumentor
.
Usage¶
import pymysql
from opentelemetry.instrumentation.pymysql import PyMySQLInstrumentor
PyMySQLInstrumentor().instrument()
cnx = pymysql.connect(database="MySQL_Database")
cursor = cnx.cursor()
cursor.execute("INSERT INTO test (testField) VALUES (123)"
cnx.commit()
cursor.close()
cnx.close()
API¶
- class opentelemetry.instrumentation.pymysql.PyMySQLInstrumentor(*args, **kwargs)[source]¶
Bases:
opentelemetry.instrumentation.instrumentor.BaseInstrumentor
- instrumentation_dependencies()[source]¶
Return a list of python packages with versions that the will be instrumented.
The format should be the same as used in requirements.txt or pyproject.toml.
For example, if an instrumentation instruments requests 1.x, this method should look like:
- def instrumentation_dependencies(self) -> Collection[str]:
return [‘requests ~= 1.0’]
This will ensure that the instrumentation will only be used when the specified library is present in the environment.
- Return type
- static instrument_connection(connection, tracer_provider=None)[source]¶
Enable instrumentation in a PyMySQL connection.
- Parameters
connection – The connection to instrument.
tracer_provider – The optional tracer provider to use. If omitted the current globally configured one is used.
- Returns
An instrumented connection.