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'])