Skip to content

Commit

Permalink
chore: add translations
Browse files Browse the repository at this point in the history
  • Loading branch information
svc-docs-eng-opensource-bot committed Jul 16, 2024
1 parent 76f4016 commit 7357e7f
Show file tree
Hide file tree
Showing 63 changed files with 10,644 additions and 452 deletions.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
title: Guía de migración de capas de .NET OpenTracing a AWS Lambda
tags:
- Agents
- NET agent
- Migration guides
metaDescription: This guide helps New Relic AWS Lambda Agent for .NET users migrate from NewRelic.OpenTracing.AmazonLambda.Tracer to AWS Lambda layers
freshnessValidatedDate: never
translationType: machine
---

Esta guía describe los principales cambios entre `NewRelic.OpenTracing.AmazonLambda.Tracer` y la capa Lambda del agente .NET. También detalla las diferentes opciones disponibles al actualizar y cómo migrar exitosamente para usar la capa .NET agente Lambda.

<Callout variant="important">
El soporte para instrumentado AWS función Lambda comienza en la v10.24.0 del agente .NET.
</Callout>

Estos son los principales cambios para esta transición:

* El paquete `NewRelic.OpenTracing.AmazonLambda.Tracer` entra en conflicto con la instrumentación del agente y debe eliminar.
* Cualquier cambio de código realizado en la función Lambda AWS para OpenTracing debe revertir.
* El agente New Relic .NET se empleará para instrumentar la función Lambda AWS .
* Las capas de AWS Lambda están disponibles cuando combina el agente .NET y la extensión New Relic Lambda requerida.
* En la mayoría de los casos, la instrumentación de la función Lambda AWS es automática.
* El agente .NET se basa en la extensión New Relic Lambda para enviar datos en AWS función Lambda.
* Las capas se pueden configurar empleando la herramienta New Relic Lambda CLI, un complemento framework sin servidor o manualmente.
* Los nombres y tiempos métricos diferirán porque la forma en que se instrumenta la función cambió fundamentalmente.
* Cualquier dashboard, alerta o consulta que se base en la métrica anterior deberá actualizar luego de la migración.

## Eliminando NewRelic.OpenTracing.AmazonLambda.rastreador y OpenTracing [#remove]

El paquete `NewRelic.OpenTracing.AmazonLambda.Tracer` debe eliminar antes de emplear el agente .NET y cualquier cambio realizado en su función Lambda AWS para admitirlo debe deshacer.

1. La configuración del paquete `NewRelic.OpenTracing.AmazonLambda.Tracer` requiere crear un nuevo `FunctionHandler` que llame al `FunctionHandler` original y lo ajuste para habilitar la instrumentación. Antes de eliminar el `NewRelic.OpenTracing.AmazonLambda.Tracer` deberás deshacer esa llamada para que la limpieza se realice más fácilmente.
2. El agente .NET no admite el uso de API OpenTracing para pasar datos personalizados. Cualquier cambio en su código que dependa de las API de OpenTracing, ya sea directamente o mediante el paquete `NewRelic.OpenTracing.AmazonLambda.Tracer` , debe eliminar o migrarse para usar las API del agente .NET.
3. Elimine el paquete `NewRelic.OpenTracing.AmazonLambda.Tracer` de su proyecto. Limpie cualquier problema sobrante relacionado con la eliminación.

## Seleccionar un método de instalación de capas [#install]

Luego de eliminar el paquete `NewRelic.OpenTracing.AmazonLambda.Tracer` , el siguiente paso es seleccionar qué método empleará para instalar y configurar la capa .NET AWS Lambda. Como se mencionó anteriormente, existen principalmente tres opciones:

* New Relic Lambda CLI
* New Relic complemento framework Relic Serverless
* Instalación totalmente manual

Recomendamos elegir Lambda CLI o el complemento framework Serverless, ya que automatizan la mayor parte de la configuración. Cada uno tiene sus propias dependencias y requisitos que deben tener, algunos de los cuales se describirán en la siguiente sección. Si ya emplea uno de estos enfoques, le recomendamos mantener las cosas simples empleando el mismo enfoque para todas sus funciones Lambda AWS .

Para obtener un conjunto completo de instrucciones detalladas de introducción al monitoreo AWS Lambda consulte nuestra [guía de habilitación](/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/enable-aws-lambda-monitoring/).

## New Relic Lambda CLI [#cli]

<Callout variant="important">
La compatibilidad con la capa .NET agente AWS Lambda comienza en la versión 0.9.2 de Lambda CLI.
</Callout>

El [inicio rápido](/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/instrument-your-own/) de Lambda CLI tiene un ejemplo del comando para actualizar su función AWS Lambda para usar la capa de agente .NET. Esto detectará automáticamente el tiempo de ejecución de la función y seleccionará la capa adecuada. Puede encontrar opciones de configuración adicionales en el [repositorio de Lambda CLI](https://github.com/newrelic/newrelic-lambda-cli?tab=readme-ov-file#recommendations).

## New Relic complemento framework Relic Serverless [#serverless]

<Callout variant="important">
La compatibilidad con la capa .NET agente AWS Lambda comienza en la versión 5.3.0 del complemento framework Serverless.
</Callout>

El [inicio rápido del complemento Serverless framework ](/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/instrument-your-own/)tiene los pasos necesarios para instalar el complemento y actualizar la configuración framework Serverless. Puede encontrar opciones de configuración adicionales en el [repositorio del complemento framework Serverless](https://github.com/newrelic/serverless-newrelic-lambda-layers).

## Instalación totalmente manual [#manual]

Si bien no recomendamos instrumentar manualmente su función Lambda AWS , tenemos información sobre los pasos necesarios para hacerlo [aquí](/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/instrument-your-own/#console).

* El agente .NET instrumentará automáticamente su función Lambda AWS , en la mayoría de los casos cuando se instala manualmente
* La extensión New Relic Lambda todavía es necesaria para enviar datos
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,17 @@ Antes de habilitar OpenTelemetry en Apache Airflow, deberá instalar el paquete

2. Al instalar con pip, agregue el `otel` adicional al comando. Por ejemplo:

`pip install "apache-airflow[otel]"`
```sh
pip install "apache-airflow[otel]"
```

### Opción 2: instalación desde docker [#install-docker]

1. Configure la imagen de Airflow Docker siguiendo las instrucciones de [la documentación de Airflow](https://airflow.apache.org/docs/docker-stack/index.html).

2. Amplíe la imagen docker prediseñada utilizando un Dockerfile para instalar el extra `otel`. Puede reemplazar la última etiqueta con la versión que desee de la imagen.

```
```dockerfile
FROM apache/airflow:latest
RUN pip install --no-cache-dir "apache-airflow[otel]==$AIRFLOW_VERSION"
```
Expand Down Expand Up @@ -86,7 +88,7 @@ Elija uno de los siguientes métodos para configurar las opciones requeridas par

1. Configure las opciones requeridas en el archivo `airflow.cfg` .

```
```ini
[metrics]
otel_on = True
otel_host = localhost
Expand All @@ -96,7 +98,7 @@ Elija uno de los siguientes métodos para configurar las opciones requeridas par

2. O establezca las opciones requeridas como variables de entorno.

```
```sh
export AIRFLOW__METRICS__OTEL_ON=True
export AIRFLOW__METRICS__OTEL_HOST=localhost
export AIRFLOW__METRICS__OTEL_PORT=4318
Expand Down Expand Up @@ -136,15 +138,17 @@ Con Airflow métrica, puede crear un panel sobre tuberías individuales, el rend
Esta consulta recupera una lista de todas las métricas reportadas para Airflow:

```sql
SELECT uniques(metricName) FROM Metric WHERE entity.name = 'Airflow' AND metricName LIKE 'airflow.%' SINCE 30 MINUTES AGO LIMIT 100
SELECT uniques(metricName) FROM Metric WHERE entity.name = 'Airflow'
AND metricName LIKE 'airflow.%' SINCE 30 MINUTES AGO LIMIT 100
```

Asegúrate de cambiar el límite (`100`) si tus nombres métricos lo exceden.

Esta consulta muestra una comparación de diferentes tiempos de finalización para ejecuciones exitosas de diferentes DAG:

```sql
SELECT latest(airflow.dagrun.duration.success) FROM Metric FACET dag_id WHERE entity.name = 'Airflow' SINCE 30 minutes AGO TIMESERIES
SELECT latest(airflow.dagrun.duration.success) FROM Metric
FACET dag_id WHERE entity.name = 'Airflow' SINCE 30 minutes AGO TIMESERIES
```

<img
Expand All @@ -156,7 +160,8 @@ SELECT latest(airflow.dagrun.duration.success) FROM Metric FACET dag_id WHERE en
Esta consulta muestra recuentos de ejecuciones DAG fallidas, que se pueden utilizar para crear <InlinePopover type="alerts"/>para canalizaciones críticas:

```sql
SELECT count(airflow.dagrun.duration.failed) FROM Metric FACET dag_id WHERE entity.name = 'Airflow' SINCE 30 minutes AGO TIMESERIES
SELECT count(airflow.dagrun.duration.failed) FROM Metric
FACET dag_id WHERE entity.name = 'Airflow' SINCE 30 minutes AGO TIMESERIES
```

<img
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@ Nuestra integración Ray monitorea el rendimiento de su Ray, ayudándolo a diagn
targets:
- description: Ray_Metrics
urls: ["http://<YOUR_HOST_IP>:64747/metrics", "http://<YOUR_HOST_IP>:44217/metrics", "http://<YOUR_HOST_IP>:44227/metrics"]
# tls_config:
# ca_file_path: "/etc/etcd/etcd-client-ca.crt"
# cert_file_path: "/etc/etcd/etcd-client.crt"
# key_file_path: "/etc/etcd/etcd-client.key"
# tls_config:
# ca_file_path: "/etc/etcd/etcd-client-ca.crt"
# cert_file_path: "/etc/etcd/etcd-client.crt"
# key_file_path: "/etc/etcd/etcd-client.key"
verbose: false
# Defaults to false. This determines whether or not the integration should run in verbose mode.
audit: false
Expand Down Expand Up @@ -131,11 +131,9 @@ Nuestra integración Ray monitorea el rendimiento de su Ray, ayudándolo a diagn

Utilice las instrucciones de nuestros [documentos del agente de infraestructura](/docs/infrastructure/install-infrastructure-agent/manage-your-agent/start-stop-restart-infrastructure-agent/) para reiniciar su agente de infraestructura. Este es un comando básico que debería funcionar para la mayoría de las personas:

````shell
```shell
sudo systemctl restart newrelic-infra.service
```

````
```
</Step>

<Step>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ translationType: machine

El operador de agente Kubernetes agiliza la observabilidad de todo el stack para entornos Kubernetes al automatizar la instrumentación APM junto con el despliegue del agente Kubernetes . Al habilitar la instrumentación automática APM , los desarrolladores ya no necesitan gestionar manualmente [el agente APM](/docs/apm/new-relic-apm/getting-started/introduction-apm/). El operador del agente Kubernetes instalará, actualizará y eliminará automáticamente el agente APM.

Actualmente es [compatible con](#k8s-supported-versions) Java, .NET, Node.js, Python y Ruby con lenguajes adicionales (PHP y Go) en camino.
Actualmente es [compatible con](#k8s-supported-versions) Java, .NET, Node.js, Python y Ruby con lenguajes adicionales (PHP y Go) en camino. Se probó en EKS y en un clúster local que ejecuta nodos AMD.

## Antes de que empieces [#before-begin]

Expand All @@ -30,11 +30,11 @@ Antes de instalar el operador, verifique lo siguiente:
Para instalar la dependencia del administrador de certificados, ejecute estos comandos:

```shell
helm repo add jetstack https://charts.jetstack.io
helm install cert-manager jetstack/cert-manager \
--namespace cert-manager \
--create-namespace \
--set crds.enabled=true
helm repo add jetstack https://charts.jetstack.io
helm install cert-manager jetstack/cert-manager \
--namespace cert-manager \
--create-namespace \
--set crds.enabled=true
```

## instalación del operador agente Kubernetes [#install-k8s-operator]
Expand All @@ -54,31 +54,31 @@ Consulte la página [Instalar la integración de Kubernetes](/install/kubernetes
Vea este ejemplo del comando Helm usando el parámetro:

```shell
helm repo add newrelic https://helm-charts.newrelic.com

helm upgrade --install newrelic-bundle newrelic/nri-bundle \
  --set global.licenseKey=<NEW RELIC INGEST LICENSE KEY> \
  --set global.cluster=<CLUSTER_NAME> \
  --namespace=newrelic \
  --set newrelic-infrastructure.privileged=true \
  --set global.lowDataMode=true \
  --set kube-state-metrics.image.tag=${KSM_IMAGE_VERSION} \
  --set kube-state-metrics.enabled=true \
  --set kubeEvents.enabled=true \
  --set k8s-agents-operator.enabled=true \
--create-namespace
helm repo add newrelic https://helm-charts.newrelic.com

helm upgrade --install newrelic-bundle newrelic/nri-bundle \
--set global.licenseKey=<NEW RELIC INGEST LICENSE KEY> \
--set global.cluster=<CLUSTER_NAME> \
--namespace=newrelic \
--set newrelic-infrastructure.privileged=true \
--set global.lowDataMode=true \
--set kube-state-metrics.image.tag=${KSM_IMAGE_VERSION} \
--set kube-state-metrics.enabled=true \
--set kubeEvents.enabled=true \
--set k8s-agents-operator.enabled=true \
--create-namespace
```

### Instalación independiente [#standalone-installation]

Para instalar el operador del agente de Kubernetes con la configuración predeterminada, ejecute estos comandos:

```shell
helm repo add newrelic-k8s https://newrelic.github.io/k8s-agents-operator
helm upgrade --install k8s-agents-operator newrelic-k8s/k8s-agents-operator \
--namespace newrelic \
--create-namespace \
--set licenseKey=<YOUR_NEW_RELIC_INGEST_LICENSE_KEY>
helm repo add newrelic-k8s https://newrelic.github.io/k8s-agents-operator
helm upgrade --install k8s-agents-operator newrelic-k8s/k8s-agents-operator \
--namespace newrelic \
--create-namespace \
--set licenseKey=<YOUR_NEW_RELIC_INGEST_LICENSE_KEY>
```

Para obtener una lista completa de opciones de configuración, consulte el cuadro [LÉAME](https://github.com/newrelic/k8s-agents-operator/tree/main/charts/k8s-agents-operator#values) .
Expand Down Expand Up @@ -128,7 +128,7 @@ Cada namespace requiere un proceso de dos pasos para permitir la instrumentació
# - name: NEW_RELIC_APP_NAME
# value: "$(NEW_RELIC_LABELS)-$(NEW_RELIC_POD_NAME)"
nodejs:
image: newrelic/newrelic-nodejs-init:latest
image: newrelic/newrelic-node-init:latest
python:
image: newrelic/newrelic-python-init:latest
dotnet:
Expand All @@ -144,11 +144,11 @@ El operador agente Kubernetes busca anotaciones específicas del idioma al progr
Vea las anotaciones actualmente admitidas:

```shell
instrumentation.newrelic.com/inject-java: "true"
instrumentation.newrelic.com/inject-nodejs: "true"
instrumentation.newrelic.com/inject-python: "true"
instrumentation.newrelic.com/inject-dotnet: "true"
instrumentation.newrelic.com/inject-ruby: "true"
instrumentation.newrelic.com/inject-java: "true"
instrumentation.newrelic.com/inject-nodejs: "true"
instrumentation.newrelic.com/inject-python: "true"
instrumentation.newrelic.com/inject-dotnet: "true"
instrumentation.newrelic.com/inject-ruby: "true"
```

Vea este ejemplo de implementación con anotación para instrumento el agente de Java:
Expand Down
Loading

0 comments on commit 7357e7f

Please sign in to comment.