Delen via


Afhankelijkheden bijhouden met OpenCensus Python

Let op

De OpenCensus Python SDK wordt buiten gebruik gesteld. We raden u aan de Python-aanbieding op basis van OpenTelemetry te gebruiken en migratierichtlijnen te bieden.

Een afhankelijkheid is een extern onderdeel dat wordt aangeroepen via uw toepassing. Afhankelijkheidsgegevens worden verzameld met Behulp van OpenCensus Python en de verschillende integraties. De gegevens worden vervolgens als telemetrie verzonden naar Application Insights onder Azure Monitor dependencies .

Instrumenteer eerst uw Python-toepassing met de nieuwste OpenCensus Python SDK.

Afhankelijkheden in proces

Met OpenCensus Python SDK voor Azure Monitor kunt u telemetrie van afhankelijkheid 'in-process' verzenden (informatie en logica die zich in uw toepassing voordoet). Afhankelijkheden in proces hebben het type veld zoals INPROC in analyse.

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

Afhankelijkheden met integratie van aanvragen

Houd uw uitgaande aanvragen bij met de OpenCensus-integratie requests .

Download en installeer opencensus-ext-requests deze vanuit PyPI en voeg deze toe aan de traceringsintegraties. Aanvragen die worden verzonden met behulp van de Bibliotheek met Python-aanvragen, worden bijgehouden.

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

Afhankelijkheden met httplib-integratie

Houd uw uitgaande aanvragen bij met OpenCensus-integratie httplib .

Download en installeer opencensus-ext-httplib deze vanuit PyPI en voeg deze toe aan de traceringsintegraties. Aanvragen die worden verzonden via http.client voor Python3 of httplib voor Python2, worden bijgehouden.

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()

Afhankelijkheden met django-integratie

Houd uw uitgaande Django-aanvragen bij met de OpenCensus-integratie django .

Notitie

De enige uitgaande Django-aanvragen die worden bijgehouden, zijn aanroepen naar een database. Zie binnenkomende aanvragen voor aanvragen die zijn ingediend bij de Django-toepassing.

Download en installeer opencensus-ext-django vanuit PyPI en voeg de volgende regel toe aan de MIDDLEWARE sectie in het Django-bestand settings.py .

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

Er kunnen aanvullende configuraties worden geboden, leesaanpassingen voor een volledige referentie.

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

U vindt hier een Django-voorbeeldtoepassing die gebruikmaakt van afhankelijkheden in de opslagplaats met Azure Monitor OpenCensus Python-voorbeelden.

Afhankelijkheden met mysql-integratie

Houd uw MYSQL-afhankelijkheden bij met de OpenCensus-integratie mysql . Deze integratie ondersteunt de mysql-connectorbibliotheek .

Download en installeer opencensus-ext-mysql deze vanuit PyPI en voeg de volgende regels toe aan uw code.

from opencensus.trace import config_integration

config_integration.trace_integrations(['mysql'])

Afhankelijkheden met pymysql-integratie

Houd uw PyMySQL-afhankelijkheden bij met de OpenCensus-integratie pymysql .

Download en installeer opencensus-ext-pymysql deze vanuit PyPI en voeg de volgende regels toe aan uw code.

from opencensus.trace import config_integration

config_integration.trace_integrations(['pymysql'])

Afhankelijkheden met postgresql-integratie

Houd uw PostgreSQL-afhankelijkheden bij met de OpenCensus-integratie postgresql . Deze integratie ondersteunt de psycopg2-bibliotheek .

Download en installeer opencensus-ext-postgresql deze vanuit PyPI en voeg de volgende regels toe aan uw code.

from opencensus.trace import config_integration

config_integration.trace_integrations(['postgresql'])

Afhankelijkheden met pymongo-integratie

Houd uw MongoDB-afhankelijkheden bij met de OpenCensus-integratie pymongo . Deze integratie ondersteunt de pymongo-bibliotheek .

Download en installeer opencensus-ext-pymongo deze vanuit PyPI en voeg de volgende regels toe aan uw code.

from opencensus.trace import config_integration

config_integration.trace_integrations(['pymongo'])

Afhankelijkheden met sqlalchemy-integratie

Houd uw afhankelijkheden bij met behulp van SQLAlchemy met behulp van OpenCensus-integratie sqlalchemy . Met deze integratie wordt het gebruik van het sqlalchemy-pakket bijgehouden, ongeacht de onderliggende database.

from opencensus.trace import config_integration

config_integration.trace_integrations(['sqlalchemy'])

Volgende stappen