Sledování závislostí pomocí OpenCensus Pythonu
Upozornění
Sada OpenCensus Python SDK je vyřazena. Doporučujeme nabídku Pythonu založenou na OpenTelemetry a poskytnout pokyny k migraci.
Závislost je externí komponenta volaná vaší aplikací. Data závislostí se shromažďují pomocí OpenCensus Pythonu a jejich různých integrací. Data se pak odesílají do Application Insights v rámci služby Azure Monitor jako dependencies
telemetrie.
Nejprve instrumentujte aplikaci v Pythonu pomocí nejnovější sady OpenCensus Python SDK.
Závislosti v procesu
OpenCensus Python SDK pro Azure Monitor umožňuje odesílat telemetrii závislostí v procesu (informace a logiku, ke kterým dochází v rámci vaší aplikace). Závislosti v procesu budou mít type
pole jako INPROC
v analýze.
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!')
Závislosti s integrací požadavků
Sledujte odchozí požadavky pomocí integrace OpenCensus requests
.
Stáhněte a nainstalujte opencensus-ext-requests
z PyPI a přidejte ho do integrací trasování. Žádosti odeslané pomocí knihovny žádostí Pythonu se budou sledovat.
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
Závislosti s integrací httplib
Sledujte odchozí požadavky s integrací OpenCensus httplib
.
Stáhněte a nainstalujte opencensus-ext-httplib
z PyPI a přidejte ho do integrací trasování. Požadavky odeslané pomocí http.client pro Python3 nebo httplib pro Python2 se budou sledovat.
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()
Závislosti s integrací django
Sledujte odchozí požadavky Django pomocí integrace OpenCensus django
.
Poznámka:
Jedinými odchozími požadavky Django, které jsou sledovány, jsou volání do databáze. U žádostí provedených v aplikaci Django se podívejte na příchozí žádosti.
Stáhněte a nainstalujte opencensus-ext-django
z PyPI a přidejte následující řádek do MIDDLEWARE
oddílu v souboru Django settings.py
.
MIDDLEWARE = [
...
'opencensus.ext.django.middleware.OpencensusMiddleware',
]
Můžete zadat další konfiguraci, přečíst si vlastní nastavení pro kompletní referenci.
OPENCENSUS = {
'TRACE': {
'SAMPLER': 'opencensus.trace.samplers.ProbabilitySampler(rate=1)',
'EXPORTER': '''opencensus.ext.azure.trace_exporter.AzureExporter(
connection_string="InstrumentationKey=<your-ikey-here>"
)''',
}
}
Ukázkovou aplikaci Django, která používá závislosti, najdete v úložišti ukázek Pythonu služby Azure Monitor OpenCensus.
Závislosti s integrací mysql
Sledujte závislosti MYSQL pomocí integrace OpenCensus mysql
. Tato integrace podporuje knihovnu mysql-connector .
Stáhněte a nainstalujte opencensus-ext-mysql
z PyPI a přidejte do kódu následující řádky.
from opencensus.trace import config_integration
config_integration.trace_integrations(['mysql'])
Závislosti s integrací pymysql
Sledujte závislosti PyMySQL s integrací OpenCensus pymysql
.
Stáhněte a nainstalujte opencensus-ext-pymysql
z PyPI a přidejte do kódu následující řádky.
from opencensus.trace import config_integration
config_integration.trace_integrations(['pymysql'])
Závislosti s integrací postgresql
Sledujte závislosti PostgreSQL pomocí integrace OpenCensus postgresql
. Tato integrace podporuje knihovnu psycopg2 .
Stáhněte a nainstalujte opencensus-ext-postgresql
z PyPI a přidejte do kódu následující řádky.
from opencensus.trace import config_integration
config_integration.trace_integrations(['postgresql'])
Závislosti s integrací pymongo
Sledujte závislosti MongoDB pomocí integrace OpenCensus pymongo
. Tato integrace podporuje knihovnu pymongo .
Stáhněte a nainstalujte opencensus-ext-pymongo
z PyPI a přidejte do kódu následující řádky.
from opencensus.trace import config_integration
config_integration.trace_integrations(['pymongo'])
Závislosti s integrací sqlalchemy
Sledujte závislosti pomocí SQLAlchemy pomocí integrace OpenCensus sqlalchemy
. Tato integrace sleduje využití balíčku sqlalchemy bez ohledu na podkladovou databázi.
from opencensus.trace import config_integration
config_integration.trace_integrations(['sqlalchemy'])