IRONSOFTWAREHOME
AJUDA DO PYTHON

OpenTelemetry em aplicações Python

Curtis Chau
Curtis Chau
Updated: 21 de abril de 2026

A geração e a observabilidade eficazes de documentos são fundamentos essenciais para o desenvolvimento de sistemas escaláveis ​​e resilientes no desenvolvimento de software contemporâneo. Os desenvolvedores podem instrumentar, coletar e analisar dados observáveis ​​de sistemas distribuídos usando o OpenTelemetry, uma plataforma de observabilidade de código aberto.

Com o IronPDF, um .NET Framework robusto, os desenvolvedores podem criar, modificar e gerar documentos PDF com facilidade. Este artigo abordará a integração do OpenTelemetry Python com o IronPDF, demonstrando como essas duas tecnologias trabalham juntas para melhorar a observabilidade e o potencial de geração de documentos.

Os desenvolvedores podem acessar um extenso conjunto de recursos para instrumentar, coletar e exportar telemetria aberta e dados de sistemas distribuídos com os pacotes OpenTelemetry API e SDK, uma implementação do projeto OpenTelemetry em Python.

OpenTelemetry Python (Como Funciona para Desenvolvedores): Figura 1 - página inicial do OpenTelemetry

Funcionalidades do OpenTelemetry

Vamos examinar a instrumentação do OpenTelemetry em busca de suas principais características em Python:

Rastreamento Distribuído

  • O rastreamento distribuído, que permite aos desenvolvedores acompanhar o caminho das solicitações por meio de sistemas dispersos, é possibilitado pelo OpenTelemetry for Python.
  • Os registros oferecem informações sobre a sequência de solicitações, incluindo as datas e horários dos contatos com o serviço.
  • Os desenvolvedores podem instrumentar programas em Python para registrar intervalos (spans), que são ações discretas ou partes de um rastreamento distribuído.

Coleta de métricas

  • OpenTelemetry Python facilita a importação de métricas MeterProvider, que reúne dados numéricos sobre o comportamento e desempenho do sistema.
  • Os desenvolvedores podem instrumentar seus aplicativos para coletar dados como latência, taxa de transferência, taxas de erro e uso de recursos.
  • Ao oferecer informações sobre padrões de uso, tendências de desempenho e integridade do sistema, essas métricas ajudam a compreender os comportamentos do sistema.

Propagação de Contexto

  • A propagação de contexto é facilitada pelo pacote de API OpenTelemetry, que garante que o contexto distribuído — como o contexto de rastreamento e de abrangência — seja propagado entre os limites do serviço.
  • Os dados de telemetria podem ser correlacionados e contextualizados à medida que se movem pelo sistema devido à propagação de contexto, o que preserva a continuidade e a consistência dos dados.

Bibliotecas de Instrumentação

  • O OpenTelemetry Python simplifica a instrumentação de aplicações Python existentes, fornecendo pacotes de instrumentação para frameworks, bibliotecas e protocolos amplamente utilizados.
  • Integrações para frameworks web (como Flask e Django), clientes de banco de dados (como SQLAlchemy e Pymongo), sistemas de mensagens (como Kafka e RabbitMQ) e muito mais podem ser encontradas em bibliotecas de instrumentação.

Ecossistema de Exportadores

  • Uma variedade de exportadores fornecidos pelo OpenTelemetry Python permite que os desenvolvedores exportem dados de telemetria para diferentes sistemas de observabilidade e backends.
  • Os exportadores oferecem suporte à integração com plataformas de observabilidade como Jaeger, Zipkin, Prometheus, AWS X-Ray, Google Cloud Trace e outras.
  • Os desenvolvedores podem configurar exportadores para transferir dados de telemetria para um ou mais servidores de armazenamento, análise e exibição a longo prazo.
  • O OpenTelemetry Python oferece suporte a técnicas de amostragem variável para regular a quantidade de dados de telemetria coletados.
  • Os desenvolvedores têm a opção de aplicar lógica de amostragem personalizada, definir a amostragem para coletar uma determinada porcentagem de rastreamentos ou amostrar de acordo com parâmetros predefinidos (como cabeçalhos de solicitação ou rotas).

Registro contextual de informações

  • Ferramentas para registrar dados contextuais, além de dados de telemetria, estão disponíveis no SDK Python do OpenTelemetry.
  • Os desenvolvedores podem adicionar contexto de rastreamento e extensão às mensagens de log com o registro contextual, o que fornece mais contexto para solução de problemas e depuração.

Criar e configurar o OpenTelemetry em Python.

Configurar o OpenTelemetry

Para configurar o OpenTelemetry para seu projeto, você pode começar instalando os pacotes necessários usando pip install opentelemetry-exporter-jaeger.

pip install opentelemetry-exporter-jaeger
SHELL

Em seguida, instale o SDK Python do OpenTelemetry usando o seguinte comando:

pip install opentelemetry-sdk
SHELL

O pacote pip opentelemetry-api fornece uma API abrangente para instrumentação e oferece instrumentação automática, tornando mais fácil instrumentar suas aplicações. Uma maneira alternativa de fazer isso poderia ser usando o método exportação-importação BatchSpanProcessor para garantir uma exportação eficiente de dados de telemetria.

Para definir os parâmetros do SDK do OpenTelemetry, crie um arquivo de configuração. O arquivo de configuração otel_config.py serve como exemplo. Garanta que todas as importações, como resources import Resource e trace import TracerProvider, estejam presentes para configurar o exemplo de código sem erros.

from opentelemetry import trace
from opentelemetry.sdk.resources import Resource
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.jaeger.thrift import JaegerExporter

# Configure Jaeger exporter
jaeger_exporter = JaegerExporter(
    agent_host_name="localhost",
    agent_port=6831,
)

# Create a TracerProvider with Jaeger exporter
tracer_provider = TracerProvider(resource=Resource.create({'service.name': 'my-python-service'}))
tracer_provider.add_span_processor(BatchSpanProcessor(jaeger_exporter))
trace.set_tracer_provider(tracer_provider)
Python

Dentro deste arquivo de configuração:

  • O exportador Jaeger está configurado para exportar rastreamentos para um agente Jaeger local.
  • Usando o exportador Jaeger, construímos um TracerProvider e o configuramos como o provedor de rastreamento global.
  • Fornecemos o nome do serviço para o nosso programa em Python.

Inicialize o OpenTelemetry em seu aplicativo.

Importe o módulo otel_config no seu programa Python e, em seguida, inicialize o OpenTelemetry no início com o seguinte exemplo de código Python:

from opentelemetry import trace
from otel_config import tracer_provider

# Initialize OpenTelemetry
trace.get_tracer(__name__)
Python

Ao fazer isso, a configuração encontrada em otel_config.py é inicializada para a instrumentação do OpenTelemetry.

Instrumente sua aplicação

Utilize o OpenTelemetry para instrumentar seu programa Python de forma que ele possa registrar rastreamentos. Você tem duas opções para instrumentar seu código: manualmente ou por meio das bibliotecas integradas. Esta é uma ilustração de algumas chamadas de instrumentação manual:

from opentelemetry import trace

# Start a span
with trace.get_tracer(__name__).start_as_current_span("example_span"):
    # Your code here
    pass
Python

Visualizar rastros na interface do usuário do Jaeger

Para visualizar e examinar os registros gravados, acesse a interface do usuário do Jaeger. Para visualizar os traços que o coletor OpenTelemetry grava, abra a interface do Jaeger no seu navegador da web (geralmente em http://localhost:16686) e escolha o nome do seu serviço.

Seguindo estas instruções, você instalou e configurou com sucesso o OpenTelemetry Python em sua aplicação. Agora, você pode ver como seu programa Python se comporta e performa usando o OpenTelemetry para gravar rastreamentos e exportá-los para o backend do Jaeger.

Primeiros passos com o IronPDF

O que é o IronPDF?

Com a poderosa biblioteca .NET IronPDF da Iron Software, os desenvolvedores podem criar, editar e apresentar documentos PDF em aplicativos .NET . Os desenvolvedores podem usar o IronPDF para criar documentos PDF programaticamente a partir de diversas fontes, como arquivos PDF preexistentes, texto HTML, URLs e imagens. Vamos analisar mais detalhadamente os recursos do IronPDF:

OpenTelemetry Python (Como Funciona para Desenvolvedores): Figura 2 - página inicial do IronPDF

Converter HTML para PDF

Os desenvolvedores podem converter facilmente conteúdo HTML em arquivos PDF com o IronPDF. Ao usar texto HTML como entrada, os desenvolvedores podem produzir documentos PDF visualmente ricos, com formatação, imagens e estilos.

Converter URL para PDF

Os desenvolvedores podem gerar documentos PDF diretamente a partir de URLs usando o IronPDF. Uma excelente aplicação para essa funcionalidade é a captura de conteúdo de páginas da web ou conteúdo criado dinamicamente a partir de aplicativos da web.

Converter imagem para PDF

Com o IronPDF, imagens nos formatos PNG, JPEG e BMP podem ser convertidas em documentos PDF. Essa funcionalidade permite que desenvolvedores de aplicativos criem documentos PDF a partir de fotos, o que é útil para aplicativos que precisam de recursos como a criação de álbuns de fotos ou a incorporação de fotos em arquivos PDF.

Como instalar o IronPDF

Depois de se certificar de que o Python está instalado no seu computador, use pip para instalar o IronPDF.

pip install ironpdf

Utilizando o OpenTelemetry para gerar um documento PDF com o IronPDF

Adicione o seguinte código abaixo da inicialização do OpenTelemetry para usar o IronPDF na criação de um documento PDF :

from ironpdf import ChromePdfRenderer
from opentelemetry import trace

# Generate PDF document with IronPDF
with trace.get_tracer(__name__).start_as_current_span("pdf_generation"):
    iron_pdf = ChromePdfRenderer()
    html_content = "<html><body><h1>Hello, IronPDF!</h1></body></html>"

    pdf_content = iron_pdf.render_html_as_pdf(html_content)

    # Save or send the PDF content as needed
    with open("output.pdf", "wb") as file:
        file.write(pdf_content)
Python

Neste trecho de código:

  • Utilizando o rastreador OpenTelemetry, começamos um novo período chamado pdf_generation.
  • Durante esse período, utilizamos o IronPDF para converter material HTML em documento PDF.
  • Um arquivo chamado output.pdf contém o material PDF gerado.

OpenTelemetry Python (Como Funciona para Desenvolvedores): Figura 3 - Saída de exemplo gerada a partir do código acima

Conclusão

Finalmente, a combinação de observabilidade e recursos de geração de documentos em aplicações Python é fornecida pela conexão OpenTelemetry Python e IronPDF . Os desenvolvedores podem criar facilmente documentos com aparência profissional em tempo real, ao mesmo tempo que obtêm informações mais precisas sobre o desempenho do sistema, integrando o rastreamento distribuído e a coleta de métricas com a geração dinâmica de PDFs.

A colaboração entre OpenTelemetry Python e IronPDF surge como um poderoso facilitador, permitindo que os desenvolvedores criem aplicativos confiáveis, escaláveis ​​e de alto desempenho, à medida que as empresas buscam eficiência e excelência em suas soluções de software.

A licença vitalícia está incluída no IronPDF, que tem um preço bastante razoável quando adquirido em pacote. O pacote é um ótimo negócio por apenas $999 e só precisa ser comprado uma vez para vários sistemas. Assistência técnica online está disponível para titulares de licença 24 horas por dia, 7 dias por semana. Visite o site para saber mais sobre os custos. Visite esta página para saber mais sobre os produtos vendidos pela Iron Software.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.