Application Performance Monitoring

Analizar las traces de aplicación go APM

¿Qué es Go?

Go, conocido coloquialmente como Golang**, es un versátil lenguaje de programación creado por Google en 2007. Con una potente combinación de tipado estático y sintaxis de alto nivel, Go se ha posicionado como un lenguaje distintivo en el mundo de la programación. En muchos aspectos, la sintaxis de Go se asemeja mucho a la de C, por lo que resulta familiar y accesible para los expertos en este lenguaje. Sin embargo, Go va más allá de las capacidades de C, introduciendo una serie de sólidas características diseñadas para agilizar y mejorar el proceso de programación.

El lenguaje Go es famoso por sus avanzados mecanismos de seguridad de la memoria. Esta característica es fundamental para evitar errores de programación que podrían dar lugar a vulnerabilidades o fallos, garantizando así la robustez del software desarrollado con Go. Además, Go incorpora la recolección automática de basura, una característica innovadora que gestiona la asignación de memoria, eliminando la necesidad de una gestión manual de la misma. Esto simplifica considerablemente la programación, reduciendo los posibles errores y mejorando la eficiencia del desarrollo de código.

Además, Go es único por su uso de tipado estructural y concurrencia al estilo de los Procesos Secuenciales Comunicados (CSP). El tipado estructural, también conocido como tipado de pato, permite una mayor flexibilidad a la hora de definir y utilizar tipos, fomentando la reutilización y la adaptabilidad del código. La concurrencia estilo CSP, por otro lado, es una de las características más promocionadas de Go. Permite el desarrollo de programas concurrentes, en los que se ejecutan múltiples cálculos durante periodos de tiempo que se solapan. El resultado son programas muy eficientes y eficaces, capaces de gestionar un gran volumen de tareas simultáneamente. En general, Go es un lenguaje con visión de futuro, que equilibra hábilmente la familiaridad con la innovación y dota a los programadores de las herramientas que necesitan para crear software eficiente, eficaz y seguro.

Instrumentación de aplicaciones Go

El package appservice-go junto con una librería de instrumentación Go permite recoger métricas de rendimiento y errores del servidor de aplicaciones.

Go no soporta instrumentación verdaderamente automática como otros lenguajes actuales. En su lugar, necesitarás depender de librerías de instrumentación que generen datos de telemetría para una librería instrumentada en particular. Por ejemplo, la librería de instrumentación para net/http creará automáticamente spans que rastreen las peticiones entrantes y salientes una vez que la configures en tu código. Tiene soporte incorporado para bibliotecas populares así como soporte para instrumentar los controladores net/http, database/sql incorporados de Go.

Para conectar transacciones con spans y errores relacionados, y propagar trazas entre servicios (traza distribuida), la librería se basa en el package de contexto integrado de Go: las transacciones y spans se almacenan en objetos de contexto. Por ejemplo, para las peticiones HTTP entrantes, los datos de rastreo en vuelo se registrarán en el objeto context accesible a través de net/http.Context.

Monitorización de trazas de aplicaciones Go

Los recursos se crean automáticamente a partir de este package después de haber desplegado el Agente ServicePilot junto con la configuración adecuada de la librería Go APM. Monitoriza HTTP(S) peticiones web desde procesos Go.

Esto permite recopilar estadísticas resumidas (min,max,avg...) por aplicación Go tales como:

  • Consultas por minuto
  • Suma de consultas por código de retorno HTTP y métodos
  • Número de consultas en cada intervalo de tiempo de respuesta
  • Consultas establecidas o terminadas

Con el fin de proporcionar información detallada sobre la aplicación Go, se incluyen los detalles recogidos por transacción:

  • Host y ruta de la página web
  • IP del cliente y del servidor
  • Tiempo de respuesta real del usuario
  • Código de retorno HTTP y método
  • País cliente y geolocalización de las IP públicas

¿Cómo instalar un recurso appservice-go?

  1. Utilice su instalación de ServicePilot OnPremise o una cuenta SaaS.
  2. Añada un nuevo recurso appservice-go a través de la interfaz web (/prmviews o /prmresources) o a través de la API (página /prmpackages), se aprovisionará automáticamente el agente predeterminado de ServicePilot u otro agente.

Los detalles del paquete appservice-go se encuentran en la página /prmpackages del software.

Beneficios

ServicePilot le permite prestar servicios de TI de forma más rápida y segura con la detección automatizada y funciones avanzadas de monitoring.

Al correlacionar la tecnología GO APM con APM y la supervisión de infraestructuras, ServicePilot es capaz de proporcionar una visión más completa del entorno de TI de una organización.

Esto permite a los equipos de TI identificar y diagnosticar rápidamente los problemas que pueden estar afectando al rendimiento de las aplicaciones, y tomar medidas correctivas antes de que los usuarios finales se vean afectados.

Comience con una prueba gratuita de nuestro solution SaaS. Explore nuestros plans o contacte con nosotros para encontrar lo que mejor se adapte a usted.

Descubra más

Instalación gratuita en
unos pocos clics

SaaS Plataforma

Despliegue flexible en función de sus necesidades (SaaS, híbrido, on-premise) para agilizar la implantación de la supervisión.
  • Sin configuración de software in situ, servicio y complejidad de la configuración
  • Configuración instantánea, completa y preconfigurada para garantizar una supervisión robusta

OnPremise Plataforma

Despliegue flexible en función de sus necesidades (SaaS, híbrido, on-premise) para agilizar la implantación de la supervisión.
  • Contratos y compromisos a largo plazo ( > 1 año)
  • Gestión del rendimiento, almacenamiento de datos y gestión de infraestructuras
  • 2 soluciones adicionales: Monitoreo de VoIP y Mainframe