• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Crea una propuesta

Configuración del agente Go

Puede editar los ajustes de configuración del agente Go para controlar algunos aspectos de cómo New Relic monitorea su aplicación. Por ejemplo:

  • Active el modo de alta seguridad.
  • Agregue una etiqueta personalizada para filtrar y ordenar en la UI.
  • Desactive la recopilación de errores, evento de transacción, traza de la transacción y evento personalizado.

Métodos de configuración y precedencia.

La forma principal de configurar el agente Go es modificando la estructura newrelic.Config como parte de la llamada a newrelic.NewApplication(), que forma parte del proceso de instalación estándar. Con las versiones 2.7.0 o superiores del agente Go, también puede establecer una cantidad limitada de opciones de configuración mediante la configuración del lado del servidor en la UI.

El agente Go sigue este orden de precedencia para la configuración. Si está habilitada, la configuración del lado del servidor anula los valores correspondientes de all en la estructura newrelic.Config , incluso si los valores del lado del servidor se dejan en blanco.

Si la configuración del lado del servidor está habilitada con el agente Go, anula los valores correspondientes a all en la estructura newrelic.Config , incluso si los valores del lado del servidor se dejan en blanco.

Aquí hay descripciones detalladas de cada método de configuración:

Cambiar los ajustes de configuración

Para realizar cambios en la configuración del agente Go, establezca los valores en la estructura newrelic.Config desde un newrelic.ConfigOption personalizado. Por ejemplo, para desactivar temporalmente el monitoreo de New Relic con fines de prueba, cambie el valor de Enabled a false:

app, err := newrelic.NewApplication(
newrelic.ConfigAppName("Your Application Name"),
newrelic.ConfigLicense(os.Getenv("NEW_RELIC_LICENSE_KEY")),
func(config *newrelic.Config) {
config.Enabled = false
},
)

En este y los siguientes ejemplos, config representa su estructura de configuración de New Relic, aunque es posible que le haya dado un nombre de variable diferente cuando instaló el agente Go e inició la configuración en su aplicación.

Ajustes de configuración generales

Si está utilizando New Relic CodeStream para monitor el rendimiento de su IDE, es posible que también desee asociar el repositorio con sus servicios y asociar SHA de compilación o etiqueta de lanzamiento con errores.

Configurando desde el entorno

Para mayor flexibilidad, puede establecer muchas opciones de configuración estableciendo variables de entorno en lugar de codificarlas en el código fuente de su aplicación. Para usarlos, agrega una llamada a ConfigFromEnvironment() entre tus otras opciones de configuración:

app, err := newrelic.NewApplication(
newrelic.ConfigAppName("Your Application Name"),
newrelic.ConfigLicense(os.Getenv("NEW_RELIC_LICENSE_KEY")),
newrelic.ConfigFromEnvironment(),
)

Tenga en cuenta que las variables de entorno se leerán y sus entradas correspondientes en la estructura newrelic.Config se actualizarán en el punto de la lista de opciones donde aparece newrelic.ConfigFromEnvironment() . Si hay opciones de configuración adicionales enumeradas después de ConfigFromEnvironment, pueden anular los valores establecidos por ConfigFromEnvironment.

Por ejemplo, si se establecen las siguientes variables de entorno:

NEW_RELIC_LICENSE_KEY="your_license_key_here"
NEW_RELIC_APP_NAME="Your Application Name"
NEW_RELIC_CODE_LEVEL_METRICS_ENABLED="true"
NEW_RELIC_CODE_LEVEL_METRICS_PATH_PREFIX="myproject/src"
NEW_RELIC_LABELS="Env:Dev;Label2:label2;Label3:label3;Label4:label4"

luego el siguiente código:

app, err := newrelic.NewApplication(
newrelic.ConfigFromEnvironment(),
)

logrará el mismo resultado que el equivalente codificado:

app, err := newrelic.NewApplication(
newrelic.ConfigAppName("Your Application Name"),
newrelic.ConfigLicense("your_license_key_here"),
newrelic.ConfigCodeLevelMetricsEnabled(true),
newrelic.ConfigCodeLevelMetricsPathPrefix("myproject/src"),
func(config *newrelic.Config) {
config.Labels = map[string]string{
"Env": "Dev",
"Label2": "label2",
"Label3": "label3",
"Label4": "label4",
}
},
)

No todas las opciones de configuración posibles pueden establecerse mediante variables de entorno. La tabla de variables y funciones de entorno en el colapsador a continuación enumera todas las funciones de configuración disponibles y sus correspondientes variables de entorno. Aunque cualquier opción de configuración con nombre se puede configurar asignando directamente un valor al campo correspondiente en la estructura Config , recomendamos utilizar funciones de configuración y/o variables de entorno siempre que sea posible.

Establecer etiqueta de versión

Configurar NEW_RELIC_METADATA_SERVICE_VERSION creará una etiqueta, tag.service.version en los datos del evento. En este contexto, la versión del servicio es la versión de su código que se implementa, en muchos casos una versión semántica como 1.2.3 pero no siempre. Enviar esta información le permite facetar su telemetría según la versión del software desplegar para que pueda identificar rápidamente qué versiones de su software están produciendo los errores.

Monitoreo de IA

Esta sección incluye la configuración de Go agente para configurar el monitoreo de IA.

Importante

Si el rastreo distribuido está deshabilitado o el modo de alta seguridad está habilitado, el monitoreo de IA no recopilará datos de IA.

Configuración personalizada del evento

Puedes crear eventos personalizados y ponerlos a disposición para consultas y análisis.

Configuración del evento de transacción

Los eventos de transacción se utilizan para recopilar eventos correspondientes a solicitudes web y tareas en segundo plano. Los datos del evento permiten que la UI de New Relic muestre información adicional como histograma y percentil.

Configuración del selector de errores

Las siguientes configuraciones se utilizan para configurar el selector de errores:

Sugerencia

Para obtener una descripción general de la configuración de errores en New Relic, consulte Administrar errores en APM.

Configuración del rastreador de transacciones

Aquí hay configuraciones para cambiar la configuración del rastreador de transacciones. Para obtener más información sobre la traza de la transacción, consulte traza de la transacción.

Configuración del rastreador de almacenamiento de datos

Aquí se muestran las configuraciones de almacenamiento de datos, incluida la habilitación y configuración de consulta lenta .

Configuración de rastreo multiaplicación

Aquí hay configuraciones para cambiar la característica de rastreo multiaplicación .

Importante

El rastreo de aplicaciones múltiples ha quedado obsoleto en favor de Distributed tracing y se eliminará en una versión futura de agente.

Rastreo distribuido configuración

Importante

Para habilitar rastreo distribuido se requiere la versión 2.1.0 del agente Go o superior, y deshabilita el rastreo multiaplicación. También tiene efectos sobre otras características. Antes de habilitar, lea la guía de transición.

rastreo distribuido te permite ver el camino que sigue una solicitud a medida que viaja a través de un sistema distribuido.

Cuando rastreo distribuido está habilitado, puedes recopilar span evento.

Configuración del evento span

Span evento son reportados para rastreo distribuido. rastreo distribuido debe estar habilitado para reportar span evento. Estas configuraciones controlan la colección de eventos span:

Configuración de seguimiento infinito

Para habilitar Infinite Tracing, habilite rastreo distribuido (establezca config.DistributedTracer.Enabled = true en la estructura newrelic.Config ) y agregue las configuraciones adicionales a continuación. Para ver un ejemplo, consulte Agente de idioma: Configurar rastreo distribuido.

Configuración de registro de aplicaciones

Las siguientes configuraciones están disponibles para la configuración del inicio de sesión de la aplicación en el agente. Para obtener sugerencias sobre cómo utilizar logs en el contexto del agente Go, consulte Go logs en el contexto.

Importante

Requiere la versión 3.17.0 o superior del agente Go

Configuración métrica de dependencia del módulo

La dependencia del módulo métrica se puede configurar de diversas formas en el agente Go. Module dependency métrica informa la lista de módulos importados utilizados por su aplicación Go para ayudar a facilitar la gestión de la dependencia del código. También incluye la información de la versión de los módulos de tu aplicación.

Importante

Requiere la versión 3.20.0 del agente Go o mas alto

New Relic IAST

New Relic Interactive aplicación Security Testing (IAST) prueba su aplicación en busca de vulnerabilidades explotables reproduciendo la solicitud HTTP generada con carga vulnerable. Puede habilitar New Relic IAST actualizando el código de su aplicación Go con la configuración que se pasa a la función INIT. También puedes realizar estas configuraciones a través de un archivo YAML o con variables de entorno.

Las opciones configuradas mediante funciones INIT tienen prioridad sobre el entorno o la configuración YAML. Dicho esto, recomendamos habilitar IAST usando un archivo YAML porque esa configuración pasará a otro agente en su entorno.

Instrucciones de configuración

Importe la integración agregando la siguiente dependencia directa a su archivo go.mod .

import "github.com/newrelic/go-agent/v3/integrations/nrsecurityagent"

A continuación, inicialice y habilite el agente de seguridad.

Habilitar IAST

Configurar IAST

El agente de seguridad se puede configurar con las siguientes opciones.

Instrumentar las partes sensibles a la seguridad de su aplicación

La integración nrgin, nrgrpc, nrmicro, fasthttp o nrmongo ahora contiene código para respaldar el análisis de seguridad de los datos que manejan.

Además, el agente Go realizará escaneo de vulnerabilidades en código instrumentado que contiene segmentos de almacenamiento de datos, operaciones SQL, transacciones y llamadas y extremos HTTP envueltos.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.