OpenCensus Python ile bağımlılıkları izleme

Not

OpenCensus Python SDK'sı kullanımdan kaldırılmıştır, ancak Microsoft 30 Eylül 2024'te kullanımdan kaldırılana kadar bunu destekler. Şimdi OpenTelemetry tabanlı Python teklifini öneririz ve geçiş kılavuzu sağlarız.

Bağımlılık, uygulamanız tarafından çağrılan bir dış bileşendir. Bağımlılık verileri OpenCensus Python ve çeşitli tümleştirmeleri kullanılarak toplanır. Veriler daha sonra Telemetri olarak dependencies Azure İzleyici altında Application Insights'a gönderilir.

İlk olarak Python uygulamanızı en son OpenCensus Python SDK'sı ile izleyin.

İşlem içi bağımlılıklar

Azure İzleyici için OpenCensus Python SDK'sı, "işlem içi" bağımlılık telemetrisi (uygulamanız içinde gerçekleşen bilgiler ve mantık) göndermenize olanak tanır. İşlem içi bağımlılıklar, analizde type olduğu gibi INPROC alanına sahip olacaktır.

from opencensus.ext.azure.trace_exporter import AzureExporter
from opencensus.trace.samplers import ProbabilitySampler
from opencensus.trace.tracer import Tracer

tracer = Tracer(exporter=AzureExporter(connection_string="InstrumentationKey=<your-ikey-here>"), sampler=ProbabilitySampler(1.0))

with tracer.span(name='foo'): # <-- A dependency telemetry item will be sent for this span "foo"
    print('Hello, World!')

"İstekler" tümleştirmesi ile bağımlılıklar

OpenCensus requests tümleştirmesi ile giden isteklerinizi izleyin.

PyPI'den indirip yükleyin opencensus-ext-requests ve izleme tümleştirmelerine ekleyin. Python istek kitaplığı kullanılarak gönderilen istekler izlenir.

import requests
from opencensus.ext.azure.trace_exporter import AzureExporter
from opencensus.trace import config_integration
from opencensus.trace.samplers import ProbabilitySampler
from opencensus.trace.tracer import Tracer

config_integration.trace_integrations(['requests'])  # <-- this line enables the requests integration

tracer = Tracer(exporter=AzureExporter(connection_string="InstrumentationKey=<your-ikey-here>"), sampler=ProbabilitySampler(1.0))

with tracer.span(name='parent'):
    response = requests.get(url='https://www.wikipedia.org/wiki/Rabbit') # <-- this request will be tracked

"httplib" tümleştirmesi ile bağımlılıklar

OpenCensus httplib tümleştirmesi ile giden isteklerinizi izleyin.

PyPI'den indirip yükleyin opencensus-ext-httplib ve izleme tümleştirmelerine ekleyin. Python3 için http.client veya Python2 için httplib kullanılarak gönderilen istekler izlenir.

import http.client as httplib
from opencensus.ext.azure.trace_exporter import AzureExporter
from opencensus.trace import config_integration
from opencensus.trace.samplers import ProbabilitySampler
from opencensus.trace.tracer import Tracer

config_integration.trace_integrations(['httplib'])
conn = httplib.HTTPConnection("www.python.org")

tracer = Tracer(
    exporter=AzureExporter(),
    sampler=ProbabilitySampler(1.0)
)

conn.request("GET", "http://www.python.org", "", {})
response = conn.getresponse()
conn.close()

"django" tümleştirmesi ile bağımlılıklar

OpenCensus django tümleştirmesi ile giden Django isteklerinizi izleyin.

Not

İzlenen tek giden Django istekleri veritabanına yapılan çağrılardır. Django uygulamasına yapılan istekler için bkz. gelen istekler.

PyPI'den indirip yükleyin opencensus-ext-django ve Django settings.py dosyasının MIDDLEWARE bölümüne aşağıdaki satırı ekleyin.

MIDDLEWARE = [
    ...
    'opencensus.ext.django.middleware.OpencensusMiddleware',
]

Ek yapılandırma sağlanabilir, tam başvuru için özelleştirmeleri okuyun.

OPENCENSUS = {
    'TRACE': {
        'SAMPLER': 'opencensus.trace.samplers.ProbabilitySampler(rate=1)',
        'EXPORTER': '''opencensus.ext.azure.trace_exporter.AzureExporter(
            connection_string="InstrumentationKey=<your-ikey-here>"
        )''',
    }
}

Bağımlılıkları kullanan bir Django örnek uygulamasını burada bulunan Azure İzleyici OpenCensus Python örnekleri deposunda bulabilirsiniz.

"mysql" tümleştirmesi ile bağımlılıklar

OpenCensus mysql tümleştirmesiyle MYSQL bağımlılıklarınızı izleyin. Bu tümleştirme , mysql-connector kitaplığını destekler.

PyPI'den indirip yükleyin opencensus-ext-mysql ve kodunuza aşağıdaki satırları ekleyin.

from opencensus.trace import config_integration

config_integration.trace_integrations(['mysql'])

"pymysql" tümleştirmesi ile bağımlılıklar

OpenCensus pymysql tümleştirmesiyle PyMySQL bağımlılıklarınızı izleyin.

PyPI'den indirip yükleyin opencensus-ext-pymysql ve kodunuza aşağıdaki satırları ekleyin.

from opencensus.trace import config_integration

config_integration.trace_integrations(['pymysql'])

"postgresql" tümleştirmesi ile bağımlılıklar

OpenCensus postgresql tümleştirmesiyle PostgreSQL bağımlılıklarınızı izleyin. Bu tümleştirme psycopg2 kitaplığını destekler.

PyPI'den indirip yükleyin opencensus-ext-postgresql ve kodunuza aşağıdaki satırları ekleyin.

from opencensus.trace import config_integration

config_integration.trace_integrations(['postgresql'])

"pymongo" tümleştirmesi ile bağımlılıklar

OpenCensus pymongo tümleştirmesi ile MongoDB bağımlılıklarınızı izleyin. Bu tümleştirme pymongo kitaplığını destekler.

PyPI'den indirip yükleyin opencensus-ext-pymongo ve kodunuza aşağıdaki satırları ekleyin.

from opencensus.trace import config_integration

config_integration.trace_integrations(['pymongo'])

"sqlalchemy" tümleştirmesi ile bağımlılıklar

OpenCensus sqlalchemy tümleştirmesi kullanarak SQLAlchemy kullanarak bağımlılıklarınızı izleyin. Bu tümleştirme, temel alınan veritabanından bağımsız olarak sqlalchemy paketinin kullanımını izler.

from opencensus.trace import config_integration

config_integration.trace_integrations(['sqlalchemy'])

Sonraki adımlar