▶ overview
SkyWalking is an open source APM system with the following core features:
- Service, service instance, endpoint metrics analysis
- Root cause analysis
- Service topology analysis
- Services, service instances, and endpoint dependency analysis
- Slow service and endpoint detection
- Performance optimization
- Distributed tracing and context propagation
- Database access metrics, slow SQL detection (including SQL statements)
- Call the police
▶ SkyWalking Architecture Diagram
SkyWalking supports data/metrics from many sources and in many formats, including:
- Java, .NET Core, NodeJS and PHP auto-instrument agents in SkyWalking format
- Istio telemetry format
- Zipkin v1/v2 format
- Jaeger gRPC format.
- Envoy metrics format (the metric entries itself is prometheus client metric family)
▶ Deploy SkyWalking OAP & SkyWalking UI
Docker deploys SkyWalking OAP & UI
▶ Example: Spring Boot & SkyWalking Java Agent
1. Obtain the Java Agent library
SkyWalking OAP & UI was constructed by referring to Docker image. After compilation, Java Agent was skywalk-agent/Skywalk-agent.jar. Agent configuration file for skywalking – agent/config/agent. The config
2. Start the Spring Boot application
Using the spring-boot-demos/ Hello Spring Boot project as an example, after using Maven to package, run the following command to start the service:
java \ -javaagent:/<skywalking-project-path>/skywalking-agent/skywalking-agent.jar \ -dsw_agent_collector_backend_services =127.0.0.1:11800 \ -dsw_agent_name =spring-boot \ -jar hello-world-1.0-snapshot.jarCopy the code
If logs similar to the following are displayed, the Agent is successfully started:
DEBUG 2019-05-08 11:58:52:399 main AgentPackagePath : The beacon class location is Jar: file: / Users/admin/docker/skywalking/apache - skywalking - apm - 6.1.0 / skywalking - agent/skywalking - agent. The jar! /org/apache/skywalking/apm/agent/core/boot/AgentPackagePath.class. INFO 2019-05-08 11:58:52:401 main SnifferConfigInitializer : Config file found in/Users/admin/docker skywalking/apache - skywalking - apm - 6.1.0 / skywalking - agent/Config/agent. The Config. .Copy the code
3. Information is automatically collected from any address that accesses the Spring Boot service
- http://localhost:8080/
SkyWalking UI Dashboard
The dashboard
The topology
Phase to recommend
● Spring Boot injects static variables from external configuration into the application
● Convert HTML to PDF new pose
● Java calls the Docker API using UnixSocket
● Fastjson fatal flaw
● Service mesh-GRPC Local integrated remote Service
● Use Thymeleaf to render HTML dynamically
● Fastjson fatal flaw
● Spring Boot 2 integrates log4J2 logging framework
● Java interview key points summary set of core reference answers
● Java interview key points summary of the framework of reference answers
● How to protect your password
● Spring Boot RabbitMQ – Priority queue
This article is published by OpenWrite!