콘텐츠로 이동

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:3306 Docker의 포트 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 계측 가방, 넌 할 수 있어여기 있습니다.패키지에 대해 자세히 알아보십시오.


本文总阅读量次