Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pt-br] Localize 'sampling' page to Portuguese (Brazil) #5138

Merged
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
45d0bb7
[pt-br] Localize 'sampling' page to Portuguese (Brazil)
lopes-felipe Aug 30, 2024
7ed9096
Translate images
lopes-felipe Sep 2, 2024
b642d1a
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
a00552f
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
c5e4270
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
38fcb0b
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
126d046
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
e17cb03
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
63bde63
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
88d21a1
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
312521b
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
6e6bc1e
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
b7f7ca5
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
1d03530
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
c751dc5
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
eea8b65
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
321a465
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
12b0530
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
7201821
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
9633951
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
393b807
Translate image
lopes-felipe Sep 3, 2024
742b5cf
Merge branch 'localization/pt-br/sampling' of https://github.com/lope…
lopes-felipe Sep 3, 2024
0b076ac
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
7e862a5
Merge branch 'main' into localization/pt-br/sampling
lopes-felipe Sep 3, 2024
1b8206f
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
a5884ef
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 3, 2024
510a35f
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
840c860
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
a0f0ed0
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
17120fe
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
23197ff
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
ed26749
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
b2477ca
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 4, 2024
2c2462a
Update content/pt/docs/concepts/sampling/index.md
lopes-felipe Sep 5, 2024
9a6192c
from 'de cabeça/cauda' to 'pela cabeça/cauda'
lopes-felipe Sep 5, 2024
936c910
Merge branch 'main' into localization/pt-br/sampling
lopes-felipe Sep 5, 2024
1407fdc
Fix format
lopes-felipe Sep 6, 2024
228424e
Merge branch 'main' into localization/pt-br/sampling
emdneto Sep 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
215 changes: 215 additions & 0 deletions content/pt/docs/concepts/sampling/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,215 @@
---
title: Amostragem
description:
Aprenda sobre amostragem e as diferentes opções de amostragem disponíves em
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
OpenTelemetry.
weight: 80
default_lang_commit: de60a8e2c5098e47eda3e12b006c5490bdb8a94e
---

Com [rastros](/docs/concepts/signals/traces), você pode observar as requisições
conforme elas se movem de um serviço para outro em um sistema distribuído.
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
Rastreamento é altamente prático tanto para análises de alto nível quanto para
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
análises aprofundadas de sistemas.

Contudo, se a grande maioria das suas requisições é bem sucedidas e terminam com
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
uma latência aceitável e sem erros, você não precisa de 100% dos seus rastros
para observar de forma significativa suas aplicações e sistemas. Você só precisa
da amostragem correta.

![Ilustração mostrando que nem todos os dados precisam ser rastreados, e que uma amostra de dados é suficiente](traces-venn-diagram.png)

## Terminologia

É importante usar uma terminologia consistente ao discutir amostragem. Um rastro
ou trecho é considerado "amostrado" ou "não amostrado":
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved

- **Amostrado**: Um rastro ou trecho é processado e exportado. Por ter sido
escolhido pelo amostrador como um representante da população, ele é
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
considerado "amostrado".
- **Não amostrado**: Um rastro ou trecho não é processado ou exportado. Por não
ter sido escolhido pelo amostrador, ele é considerado "não amostrado".

Às vezes, as definições desses termos se confundem. Você pode encontrar alguém
dizendo que está "amostrando dados" ou que os dados não processados ou
exportados são considerados "amostrados". Essas afirmações estão incorretas.

## Por que usar amostragem?

A amostragem é uma das formas mais eficazes de reduzir os custos de
observabilidade sem perder visibilidade. Embora existam outras maneiras de
reduzir custos, como filtrar ou agregar dados, esses outros métodos não aderem
ao conceito de representatividade, que é crucial ao realizar análises
aprofundadas do comportamento de aplicações ou sistemas.

Representatividade é o princípio de que um grupo menor pode representar com
precisão um grupo maior. Além disso, a representatividade pode ser verificada
matematicamente, o que significa que você pode ter alta confiança de que uma
amostra menor de dados representa com precisão o grupo maior.

Além disso, quanto mais dados você gera, menos dados você realmente precisa para
ter uma amostra representativa. Para sistemas de alto volume, é muito comum que
uma taxa de amostragem de 1% ou menos represente com bastante precisão os outros
99% dos dados.

## Quando usar amostragem

Considere usar amostragem se você atender a qualquer um dos seguintes critérios:

- Você gera 1000 ou mais rastros por segundo.
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
- A maior parte dos seus rastros representa tráfego saudável com pouca variação
nos dados.
- Você tem alguns critérios comuns, como erros ou alta latência, que geralmente
significam que algo está errado.
- Você tem critérios específicos de domínio que você pode usar para determinar
dados relevantes além de erros e latência.
- Você consegue descrever algumas regras comuns que determinam se o dado deve
ser amostrado ou descartado.
- Você consegue diferenciar seus serviços, para que serviços de alto e baixo
volume sejam amostrados de forma diferente.
- Você tem a capacidade de rotear dados não amostrados (para cenários de "por
via das dúvidas") para sistemas de armazenamento de baixo custo.

Por fim, considere seu orçamento geral. Se você tem um orçamento limitado para
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
observabilidade, mas pode dedicar tempo para realizar uma amostragem eficaz,
então a amostragem geralmente vale a pena.

## Quando não usar amostragem

A amostragem pode não servir para você. Você talvez queira evitar a amostragem
se atender a qualquer um dos seguintes critérios:

- Você gera muito pouco dados (dezenas de pequenos rastros por segundo ou
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
menos).
- Você só usa dados de observabilidade de forma agregada e, portanto, pode
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
pré-agregar os dados.
- Você está limitado por circunstâncias como regulamentações que proíbem
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
descartar dados (e não pode rotear dados não amostrados para armazenamento de
baixo custo).

Por fim, considere os seguintes três custos associados à amostragem:

1. O custo direto de computação para amostrar dados de forma eficaz, como um
proxy de amostragem de cauda.
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
2. O custo indireto de engenharia para manter metodologias de amostragem
eficazes à medida que mais aplicações, sistemas e dados são envolvidos.
3. O custo indireto de oportunidade de perder informações críticas com técnicas
de amostragem ineficazes.

A amostragem, embora eficaz na redução dos custos de observabilidade, pode
introduzir outros custos inesperados se não for realizada de corretamente.
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
Poderia ser mais barato alocar mais recursos para observabilidade, seja com um
fornecedor ou com computação ao hospedar por conta própria, dependendo do seu
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
backend de observabilidade, da natureza dos seus dados e das suas tentativas de
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
realizar amostragem de forma eficaz.

## Amostragem de Cabeça

A amostragem de cabeça é uma técnica de amostragem usada para tomar uma decisão
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## Amostragem de Cabeça
A amostragem de cabeça é uma técnica de amostragem usada para tomar uma decisão
## Amostragem pela cabeça
A amostragem pela cabeça (_head sampling_) é uma técnica de amostragem usada para tomar uma decisão

Eu não conhecia esse termo. Parece ser bastante utilizado no contexto do OpenTelemetry (a Grafana e a Honeycomb também usam) mas não encontrei nenhuma tradução.

"Pela cabeça" me parece mais próxima do sentido original, já que dá um senso de direção: a decisão de sampling é feita pelo início dos rastros. "De cabeça" parece que a cabeça está sendo amostrada 😅

Mas as duas opções me soam um pouco estranho, então não tenho muita preferência.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Boa, pensando agora acho que também prefiro "pela cabeça" ao invés de "de cabeça", mas vamos ver o que as outras pessoas tem a dizer :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Outra opção seria um termo diferente, por exemplo "Amostragem pelo começo" e "amostragem pelo final". Isso estaria mais próximo de conceitos como começo e final de uma fila ou lista (list head/tail).

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A segunda sugestão do Luís (amostragem pelo começo/pelo final) soa melhor ao invés de cabeça e calda rsrsrsrs.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fui com "pela cabeça/cauda" porque sinto que correlaciona melhor com o conceito original (head/tail) que é mais bem difundido :)
9a6192c

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

me parece fazer sentido algo como começo/final ou antecipada/tardia, mas eu acho que cabeça/cauda da pra bater o olho e saber tbm do q se trata, n tenho uma opinião forte aqui

de amostragem o mais cedo possível. A decisão de amostrar ou descartar um trecho
ou um rastro não é feita inspecionando o rastro como um todo.

Por exemplo, a forma mais comum de amostragem de cabeça é a
[Amostragem de Probabilidade Consistente](/docs/specs/otel/trace/tracestate-probability-sampling/#consistent-probability-sampling).
Isso também é conhecido como Amostragem Determinística. Neste caso, uma decisão
de amostragem é tomada com base no ID do rastreio e na porcentagem desejada de
rastreios a serem amostrados. Isso garante que rastreios inteiros sejam
amostrados - sem trechos faltantes - a uma taxa consistente, como 5% de todos os
rastreios.

As vantagens da amostragem de cabeça são:

- Fácil de entender
- Fácil de configurar
- Eficiente
- Pode ser feita em qualquer ponto do pipeline de coleta de rastreios
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved

A principal desvantagem da amostragem de cabeça é que não é possível tomar uma
decisão de amostragem com base nos dados do rastreio inteiro. Por exemplo, você
não pode garantir que todos os rastreios com um erro sejam amostrados apenas com
a amostragem de cabeça. Para essa situação e muitas outras, você precisa da
amostragem de cauda.

## Amostragem de Cauda

A amostragem de cauda é onde a decisão de amostrar um rastreio acontece
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
considerando todos ou a maioria dos trechos dentro do rastreio. A Amostragem de
Cauda oferece a opção de amostrar seus rastreios com base em critérios
específicos derivados de diferentes partes de um rastreio, o que não é uma opção
com a Amostragem de Cabeça.

![Ilustração mostrando como os trechos se originam de um trecho raiz. Após os trechos serem concluídos, o processador de amostragem de cauda toma uma decisão de amostragem.](tail-sampling-process.png)

Alguns exemplos de como você pode usar a Amostragem de Cauda incluem:

- Sempre amostrar rastreios que contenham um erro
- Amostrar rastreios com base na latência geral
- Amostrar rastreios com base na presença ou valor de atributos específicos em
um ou mais trechos de um rastreio; por exemplo, amostrar mais rastreios
originados de um serviço recém-implantado
- Aplicar diferentes taxas de amostragem a rastreios com base em certos
critérios, como quando os rastreios vêm apenas de serviços de baixo volume
versus rastreios com serviços de alto volume.
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved

Como você pode ver, a amostragem de cauda permite um grau muito maior de
sofisticação na forma como você amostra os dados. Para sistemas maiores que
devem amostrar telemetria, é quase sempre necessário usar a Amostragem de Cauda
para equilibrar o volume de dados com a utilidade desses dados.

Existem três principais desvantagens na amostragem de cauda atualmente:

1. A amostragem de cauda pode ser difícil de implementar. Dependendo dos tipos
de técnicas de amostragem disponíveis para você, nem sempre é algo do tipo
"configurar e esquecer". À medida que seus sistemas mudam, suas estratégias
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
de amostragem também mudarão. Para um sistema distribuído grande e
sofisticado, as regras que implementam estratégias de amostragem também podem
ser grandes e sofisticadas.
2. A amostragem de cauda pode ser difícil de operar. O(s) componente(s) que
implementam a amostragem de cauda devem ser sistemas com estado que podem
aceitar e armazenar uma grande quantidade de dados. Dependendo dos padrões de
tráfego, isso pode exigir dezenas ou até centenas de nós de computação que
utilizam recursos de maneira diferente. Além disso, um amostrador de cauda
pode precisar "recorrer" a técnicas de amostragem menos intensivas
computacionalmente se não conseguir acompanhar o volume de dados que está
recebendo. Por conta desses fatores, é crucial monitorar os componentes de
amostragem de cauda para garantir que eles tenham os recursos necessários
para tomar as decisões corretas de amostragem.
3. Atualmente, os amostradores de cauda frequentemente acabam sendo tecnologias
específicas de fornecedores. Se você está usando um fornecedor pago para
Observabilidade, as opções mais eficazes de amostragem de cauda disponíveis
para você podem ser limitadas ao que o fornecedor oferece.

Por fim, para alguns sistemas, a amostragem de cauda pode ser usada em conjunto
com a Amostragem de Cabeça. Por exemplo, um conjunto de serviços que produz um
volume extremamente alto de dados de rastreamento pode primeiro usar a
amostragem de cabeça para amostrar apenas uma pequena porcentagem dos rastros e,
posteriormente, no pipeline de telemetria usar a amostragem de cauda para tomar
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
decisões de amostragem mais sofisticadas antes de exportar para um backend. Isso
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
é frequentemente feito com o intuito de proteger o pipeline de telemetria contra
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
sobrecarga.

## Suporte

### Collector

O OpenTelemetry Collector inclui os seguintes processadores de amostragem:

- [Processador de Amostragem Probabilística](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/probabilisticsamplerprocessor)
- [Processador de Amostragem de Cauda](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/processor/tailsamplingprocessor)

### SDKs de Linguagens
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved

Para as implementações específicas de cada linguagem da API e SDK do
OpenTelemetry, você vai encontrar suporte para amostragem nas respectivas
páginas de documentação:

{{% sampling-support-list " " %}}

### Fornecedores

Muitos [fornecedores](/ecosystem/vendors) oferecem soluções abrangentes de
amostragem que incorporam amostragem de cabeça, amostragem de cauda e outros
recursos que podem atender a necessidades sofisticadas de amostragem. Essas
soluções também podem ser otimizadas especificamente para o backend do
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
fornecedor. Se você está enviando telemetria para um fornecedor, considere usar
as soluções de amostragem deles.
lopes-felipe marked this conversation as resolved.
Show resolved Hide resolved
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.