Skip to content

Commit

Permalink
Merge branch 'main' into python-operator-quirks
Browse files Browse the repository at this point in the history
  • Loading branch information
xrmx authored Oct 8, 2024
2 parents 6f5e312 + ec914dc commit 4284da4
Show file tree
Hide file tree
Showing 6 changed files with 168 additions and 4 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
[submodule "content-modules/semantic-conventions"]
path = content-modules/semantic-conventions
url = https://github.com/open-telemetry/semantic-conventions
semconv-pin = v1.27.0
semconv-pin = v1.28.0
[submodule "content-modules/opamp-spec"]
path = content-modules/opamp-spec
url = https://github.com/open-telemetry/opamp-spec
Expand Down
2 changes: 1 addition & 1 deletion content-modules/semantic-conventions
49 changes: 49 additions & 0 deletions content/es/docs/concepts/context-propagation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
title: Propagación de contexto
weight: 10
description: Aprende sobre el concepto que habilita el trazado distribuido.
default_lang_commit: 4966f752eb35f97c095ed1c813972c2ab38f0b1a
---

Con la propagación de contexto, [Señales](/docs/concepts/signals) pueden
correlacionarse entre sí, independientemente de dónde se generen. Aunque no está
limitado a las trazas, la propagación de contexto permite que las
[trazas](/docs/concepts/signals/traces) construyan información causal sobre un
sistema a través de servicios que están distribuidos arbitrariamente a través de
límites de procesos y redes.

Para entender la propagación de contexto, necesitas comprender dos conceptos
separados: contexto y propagación.

## Contexto

El contexto es un objeto que contiene la información para que el servicio emisor
y receptor, o la
[unidad de ejecución](/docs/specs/otel/glossary/#execution-unit), puedan
correlacionar una señal con otra.

Por ejemplo, si el servicio A llama al servicio B, entonces un span del servicio
A cuyo ID está en el contexto será usado como el span padre para el próximo span
creado en el servicio B. El ID de traza que está en el contexto también se usará
para el siguiente span creado en el servicio B, lo que significa que el span es
parte de la misma traza que el span del servicio A.

## Propagación

La propagación es el mecanismo que mueve el contexto entre servicios y procesos.
Serializa o deserializa el objeto de contexto y proporciona la información
relevante para ser propagada de un servicio a otro.

La propagación generalmente es manejada por bibliotecas de instrumentación y es
transparente para el usuario. En caso de que necesites propagar manualmente el
contexto, puedes utilizar la
[API de Propagadores](/docs/specs/otel/context/api-propagators/).

OpenTelemetry mantiene varios propagadores oficiales. El propagador
predeterminado utiliza los encabezados especificados por la especificación de
[W3C TraceContext](https://www.w3.org/TR/trace-context/).

## Especificación

Para aprender más sobre la Propagación de Contexto, consulta la
[especificación de Contexto](/docs/specs/otel/context/).
115 changes: 115 additions & 0 deletions content/es/docs/concepts/distributions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
---
title: Distribuciones
description: >-
Una distribución, que no debe confundirse con un fork, es una versión
personalizada de un componente de OpenTelemetry.
weight: 190
default_lang_commit: 4966f752eb35f97c095ed1c813972c2ab38f0b1a
---

Los proyectos de OpenTelemetry consisten en múltiples
[componentes](../components) que soportan múltiples [señales](../signals). La
implementación de referencia de OpenTelemetry está disponible como:

- [Bibliotecas de instrumentación específicas por lenguaje](../instrumentation)
- Un archivo [binario de Collector](/docs/concepts/components/#collector)

Cualquier implementación de referencia puede ser personalizada como una
distribución.

## ¿Qué es una distribución?

Una distribución es una versión personalizada de un componente de OpenTelemetry.
Una distribución es un envoltorio alrededor de un repositorio upstream de
OpenTelemetry con algunas personalizaciones. Las distribuciones no deben
confundirse con _forks_.

Las personalizaciones en una distribución pueden incluir:

- Scripts para facilitar el uso o personalizar el uso para un backend o
proveedor específico.
- Cambios en la configuración predeterminada requeridos para un backend,
proveedor o usuario final.
- Opciones de empaquetado adicionales que pueden ser específicas de un proveedor
o usuario final.
- Cobertura adicional de pruebas, rendimiento y seguridad más allá de lo que
ofrece OpenTelemetry.
- Capacidades adicionales más allá de lo que ofrece OpenTelemetry.
- Menos capacidades de las que ofrece OpenTelemetry.

Las distribuciones en general caen en las siguientes categorías:

- **"Pura":** Estas distribuciones proporcionan la misma funcionalidad que el
_upstream_ y son 100% compatibles. Las personalizaciones generalmente mejoran
la facilidad de uso o el empaquetado. Estas personalizaciones pueden ser
específicas de un backend, proveedor o usuario final.
- **"Plus":** Estas distribuciones proporcionan funcionalidades adicionales
sobre el upstream a través de componentes adicionales. Ejemplos incluyen
bibliotecas de instrumentación o exportadores de proveedores que no han sido
integrados al proyecto de OpenTelemetry.
- **"Minus":** Estas distribuciones proporcionan un subconjunto de funcionalidad
del upstream. Ejemplos de esto incluyen la eliminación de bibliotecas de
instrumentación o receptores, procesadores, exportadores o extensiones que se
encuentran en el proyecto de OpenTelemetry Collector. Estas distribuciones
pueden ser proporcionadas para aumentar las consideraciones de soporte y
seguridad.

## ¿Quién puede crear una distribución?

Cualquiera puede crear una distribución. Hoy en día, varios
[proveedores](/ecosystem/vendors/) ofrecen
[distribuciones](/ecosystem/distributions/). Además, los usuarios finales pueden
considerar crear una distribución si desean utilizar componentes en el
[Registro](/ecosystem/registry/) que no han sido integrados al proyecto de
OpenTelemetry.

## ¿Contribución o distribución?

Antes de seguir leyendo y aprender cómo crear tu propia distribución, pregúntate
si tus aportes sobre un componente de OpenTelemetry serían beneficiosas para
todos y, por lo tanto, deberían incluirse en las implementaciones de referencia:

- ¿Pueden generalizarse tus scripts para "facilitar el uso"?
- ¿Pueden tus cambios en la configuración predeterminada ser la mejor opción
para todos?
- ¿Son realmente específicas tus opciones de empaquetado adicionales?
- ¿Podrían tus coberturas adicionales de pruebas, rendimiento y seguridad
funcionar también con la implementación de referencia?
- ¿Has consultado con la comunidad si tus capacidades adicionales podrían formar
parte del estándar?

## Creando tu propia distribución

### Collector

Una guía sobre cómo crear tu propia distribución está disponible en este
artículo:
["Building your own OpenTelemetry Collector distribution"](https://medium.com/p/42337e994b63)

Si estás creando tu propia distribución, el
[OpenTelemetry Collector Builder](https://github.com/open-telemetry/opentelemetry-collector/tree/main/cmd/builder)
podría ser un buen punto de partida.

### Bibliotecas de instrumentación específicas por lenguaje

Existen mecanismos de extensibilidad específicos por lenguaje para personalizar
las bibliotecas de instrumentación:

- [Agente de Java](/docs/zero-code/java/agent/extensions)

## Sigue las pautas

Al usar material del proyecto OpenTelemetry, como el logotipo y el nombre para
tu distribución, asegúrate de estar alineado con las [Pautas de Marketing de
OpenTelemetry para Organizaciones Contribuyentes][guidelines].

El proyecto OpenTelemetry no certifica distribuciones en este momento. En el
futuro, OpenTelemetry podría certificar distribuciones y socios de manera
similar al proyecto Kubernetes. Al evaluar una distribución, asegúrate de que
usar la distribución no resulte en un bloqueo con el proveedor.

> Cualquier soporte para una distribución proviene de los autores de la
> distribución y no de los autores de OpenTelemetry.
[guidelines]:
https://github.com/open-telemetry/community/blob/main/marketing-guidelines.md
2 changes: 1 addition & 1 deletion data/registry/tools-ruby-sentry.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ createdAt: 2023-01-31
package:
registry: gems
name: sentry-opentelemetry
version: 5.20.1
version: 5.21.0
2 changes: 1 addition & 1 deletion scripts/content-modules/adjust-pages.pl
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
my %versions = qw(
spec: 1.37.0
otlp: 1.3.2
semconv: 1.27.0
semconv: 1.28.0
);
my $otelSpecVers = $versions{'spec:'};
my $otlpSpecVers = $versions{'otlp:'};
Expand Down

0 comments on commit 4284da4

Please sign in to comment.