MySQL¶
logfire.instrument_mysql() 방법을 사용할 수 있습니다. 로그파이어 탐지 MySQL 커넥터/파이썬 각 쿼리에 대한 범위를 만드는 데이터베이스 드라이버.
설치¶
mysql 추가와 함께 logfire 설치:
{{ install_logfire(extras=['mysql']) }}
사용법¶
도커를 사용하여 MySQL 데이터베이스를 설정하고 MySQL 커넥터를 사용하여 데이터베이스에 연결하는 파이썬 스크립트를 실행하여 MySQL에서Logfire를 사용하는 방법을 보여 드리겠습니다.
¶
Docker를 사용하여 MySQL 데이터베이스 설정
먼저 MySQL 데이터베이스를 초기화해야 합니다. 다음 명령으로 Docker를 사용하여 쉽게 수행할 수 있습니다.
docker run --name mysql \
-e MYSQL_ROOT_PASSWORD=secret \
-e MYSQL_DATABASE=database \
-e MYSQL_USER=user \
-e MYSQL_PASSWORD=secret \
-p 3306:3306 -d mysql
이 주문은 다음 작업을 완료합니다.
-
--name mysql컨테이너의 이름을 "MySQL"로 지정합니다. -
-e MYSQL_ROOT_PASSWORD=secret루트 암호를 "비밀"로 설정합니다. -
-e MYSQL_DATABASE=database"데이터베이스"라는 새 데이터베이스를 만듭니다. -
-e MYSQL_USER=user"사용자"라는 새 사용자를 만듭니다. -
-e MYSQL_PASSWORD=secret새 사용자의 암호를 "비밀"로 설정합니다. -
-p 3306:3306Docker의 포트 3306을 호스트의 포트 3306에 매핑합니다. -
-d mysql백그라운드에서 컨테이너를 실행하고 컨테이너 ID를 인쇄합니다. 이미지는 "mysql"입니다.
파이썬 스크립트 실행¶
다음 Python 스크립트는 MySQL 데이터베이스에 연결하고 일부 SQL 쿼리를 실행합니다.
import logfire
import mysql.connector
logfire.configure()
# To instrument the whole module:
logfire.instrument_mysql()
connection = mysql.connector.connect(
host="localhost",
user="user",
password="secret",
database="database",
port=3306,
use_pure=True,
)
# Or instrument just the connection:
# connection = logfire.instrument_mysql(connection)
with logfire.span('Create table and insert data'), connection.cursor() as cursor:
cursor.execute(
'CREATE TABLE IF NOT EXISTS test (id INT AUTO_INCREMENT PRIMARY KEY, num integer, data varchar(255));'
)
# Insert some data
cursor.execute('INSERT INTO test (num, data) VALUES (%s, %s)', (100, 'abc'))
cursor.execute('INSERT INTO test (num, data) VALUES (%s, %s)', (200, 'def'))
# Query the data
cursor.execute('SELECT * FROM test')
results = cursor.fetchall() # Fetch all rows
for row in results:
print(row) # Print each row
logfire.instrument_mysql() 사용 OpenTelemetry MySQL 계측 가방, 넌 할 수 있어여기 있습니다.패키지에 대해 자세히 알아보십시오.
本文总阅读量次