IDEA configura el entorno de desarrollo de skywalking

Este es el tercer día de mi participación en el Desafío de actualización de noviembre. Para obtener detalles del evento, consulte: Desafío de última actualización de 2021

prefacio

Recientemente, necesito hacer algunas extensiones funcionales para skywalking, y resolví los pasos para configurar el entorno de desarrollo según mi propia idea. El sitio web oficial proporciona los pasos para instalar IntelliJ IDEA: Cómo construir el proyecto | Apache SkyWalking , pero está relativamente fragmentado y puede haber algunas situaciones inesperadas debido a problemas del entorno personal, que se comparten aquí.

alrededores

  • Computadora: MacBook Pro (16 pulgadas, 2019) y sistema original
  • Sistema operativo: "mac os x", versión: "10.15.7", arco: "x86_64"
  • IntelliJ IDEA: versión final 2020.2
  • Tienda web: 2020.3
  • JDK: 1.8.0_271
  • experto: Apache Maven 3.6.3
  • npm: 7.13.0
  • Git: 2.15.0
  • caminar por el cielo: 8.5.0

Las cuestiones ambientales son muy importantes. Por ejemplo, si no es Mac OS, algunos de los comandos que se ejecutan a continuación deben ajustarse adecuadamente de acuerdo con su propio entorno. Si la versión de IDEA es más antigua que la versión que uso, algunas funciones de reconocimiento automático de configuración pueden no ser lo suficientemente amigables, por lo que los pasos que registro a continuación pueden no ser completamente aplicables.

Descripción de la dirección de origen

Aunque skywalking se divide principalmente en varias partes, como: back-end OAP, UI, agente, etc. Pero el código de fondo y la interfaz de usuario se encuentran principalmente en dos repositorios de git:

El backend está en: github.com/apache/skyw…

La parte de la interfaz de usuario está en: github.com/apache/skyw…

UI es un submódulo que actúa como un repositorio de back-end.

A partir de la idea, puede crear directamente los paquetes de lanzamiento de front-end y back-end, pero para el desarrollo, debe configurar los entornos de desarrollo de front-end y back-end por separado.

Pasos de configuración de back-end

  1. código de clonación
git clone --recurse-submodules https://github.com/apache/skywalking.git
复制代码

El tamaño real del archivo de código total no es pequeño.Si la conexión a la red github es inestable y el clon falla, se pueden considerar otras soluciones, como configurar un proxy.

Una vez completada la descarga, abra el proyecto sin idea.

  1. compilar

Abra una línea de comando en el directorio raíz del proyecto y ejecute el siguiente comando:

mvn compile -Dmaven.test.skip=true
复制代码

Me tomó 5 minutos compilar.

También puede ejecutar directamente el paquete paquete para probar si su entorno se puede empaquetar y liberar con éxito:

mvn package -Dmaven.test.skip=true
复制代码

Si hay errores relacionados, como npm install node o npm run build durante el proceso de ejecución, puede ser un problema de red. Las soluciones son las siguientes:

Primero modifique el complemento frontend-maven en el pom.xml bajo el módulo apm-webapp a la siguiente configuración:

install -g cnpm --registry=https://registry.npm.taobao.org
复制代码

Luego vuelva a ejecutar el comando de empaquetado, espere hasta que se complete la ejecución o se informe un error: pero el complemento se ha ejecutado, recupere y vuelva a ejecutar el comando anterior:

  1. Puede llevar un tiempo abrir el proyecto con la idea e introducir dependencias, etc.

Gracias a la configuración de identificación inteligente de IDEA, el código fuente generado en el paso 2 ha sido configurado y no se requieren operaciones adicionales.

Si la idea no es tan inteligente, consulte la documentación oficial para configurar estos paquetes fuente.

  1. La clase de inicio del servidor para ejecutar OAP, el módulo de inicio de servidor bajo el módulo de servidor oap, el valor predeterminado es la base de datos h2, no la es.

  1. Ejecute la clase de inicio web, en el módulo apm-webapp, el registro de inicio predeterminado no muestra la consola

  1. Visite: http://localhost:8080/ , aparece lo siguiente, indicando que el inicio está completo

Si solo desarrolla y depura el código de back-end, está bien. Pero si se trata del front-end, debe configurar el entorno de desarrollo del front-end por separado.

Pasos de configuración de la interfaz de usuario

  1. Clonar el código e instalar
git cloen https://github.com/apache/skywalking-rocketbot-ui.git
cd skywalking-rocketbot-ui
npm install
复制代码
  1. Abra el proyecto con webstorm

  2. ejecutar configuración

  1. En ejecución, el servicio web back-end se detiene por adelantado y solo se está ejecutando un servidor OAP. El back-end web es una puerta de enlace que reenvía las solicitudes a oap. Aquí, la configuración predeterminada del front-end solicita directamente el puerto de oap.

El puerto predeterminado es 8080, visite: http://localhost:8080/

La página aparece normalmente, la configuración está completa y puede desarrollarse felizmente.

Supongo que te gusta

Origin juejin.im/post/7027666246380306462
Recomendado
Clasificación