Heroku es una solución de plataforma como servicio (PaaS) para alojar aplicaciones web en varios lenguajes de agentes, incluido Ruby. Con New Relic, puedes extender Heroku usando y métrica. Esta página describe consideraciones especiales para usar Heroku como servicio de alojamiento con el agente Ruby para New Relic.
Instale el complemento del agente New Relic
Después de implementar su aplicación Ruby en Heroku, instale el agente New Relic:
La instalación del complemento crea automáticamente una cuenta privada de New Relic y configura el acceso a los servidores Heroku. New Relic comenzará a monitorear el rendimiento de la aplicación, la experiencia del usuario final y el rendimiento del servidor de aplicaciones recopilados después de instalar el complemento. En unos minutos, los datos deberían empezar a aparecer en su página de resumen de APM.
¿Te ha ayudado este documento con la instalación?
Resolución de problemas de tu instalación
A los pocos minutos de instalar y configurar New Relic, los datos deberían comenzar a aparecer en la página de resumen de APM de su aplicación. Si no aparecen datos, siga los procedimientos de resolución de problemas del agente Ruby.
Actualización desde una instalación existente de New Relic
Si New Relic ya está instalado, reinstale el complemento usando el comando del cinturón de herramientas de Heroku.
$heroku config:set NEW_RELIC_APP_NAME='Your Application Name'
Configurar el agente Ruby en Heroku
Puede configurar New Relic en su archivo newrelic.yml
o puede usar variables de entorno para tener prioridad sobre los valores en su archivo de configuración. Utilice heroku config:set
para modificar la configuración del agente para su aplicación Heroku.
Por ejemplo, para establecer la configuración custom_insights_events.max_samples_stored
en 500:
$heroku config:set NEW_RELIC_CUSTOM_INSIGHTS_EVENTS_MAX_SAMPLES_STORED=500
Nombre del anfitrión en Heroku
Saber qué datos provienen de qué host le permite filtrar la métrica que se muestra en la UI para un host específico. En Heroku, el nombre de host dentro de dynos se genera dinámicamente y generalmente no tiene significado para usted como desarrollador de aplicaciones.
A partir de la versión 3.9.5, el agente Ruby informa el nombre del banco de pruebas Heroku como nombre de host (por ejemplo, web.1
). Esto le permite ver sus datos con el alcance de un nombre de banco de pruebas en particular. Puede desactivar este comportamiento estableciendo la configuración heroku.use_dyno_names
en false
. Luego, el agente utilizará un único nombre de marcador de posición agregado llamado Dynamic Hostname
.
Dyno nombre de agregación de hosts
Algunos dinamómetros tienen nombres que se generan dinámicamente y pueden adquirir muchos valores únicos con el tiempo. Los ejemplos incluyen scheduler
dinamómetros creados por el complemento Scheduler y run
dinamómetros creados al invocar heroku run
en la línea de comando. Para mantener razonable el número de nombres de host únicos, el agente Ruby agregará automáticamente datos de scheduler
y run
dynos en nombres de host llamados scheduler.*
y run.*
.
Si tiene otros tipos de dinamómetros que se crean dinámicamente, utilice la configuración heroku.dyno_name_prefixes_to_shorten
para aplicar la misma agregación a estos otros tipos de dinamómetros.
Registro de Heroku
En Heroku, el agente Ruby registra en la salida estándar, mezclando el registro del agente con el registro de aplicación normal. Las entradas log generadas por el agente Ruby incluyen una etiqueta [NewRelic]
como prefijo.
Para recuperar el inicio de sesión en Heroku:
Verifique que su variable de entorno
NEW_RELIC_LOG
esté configurada enstdout
con este comando del cinturón de herramientas de Heroku:bash$heroku configPara restablecer la variable de entorno si es necesario, ejecute:
bash$heroku config:set NEW_RELIC_LOG="stdout"Abra su archivo
newrelic.yml
en un editor.Cambie el
log_level
adebug
y guarde el archivo. Asegúrese de no modificar la sangría.Reinicie su aplicación web.
Genere algo de tráfico hacia su aplicación y ejecútela durante unos cinco minutos.
Ejecute el siguiente comando del cinturón de herramientas de Heroku para ver el registro solo desde el agente New Relic:
bash$heroku logs -n 1500 | grep -i relicSi envía su archivo de registro al soporte de New Relic, adjunte el archivo de registro a su ticket de soporte, junto con
newrelic.yml
, suGemfile
yGemfile.lock
.Edite
newrelic.yml
nuevamente y cambielog_level
a la configuración anterior. Guarda el archivo.