/skywalking

APM, Application Performance Monitoring System

Primary LanguageJavaApache License 2.0Apache-2.0

Apache SkyWalking

Sky Walking logo

SkyWalking: an APM(application performance monitor) system, especially designed for microservices, cloud native and container-based architectures.

GitHub stars Twitter Follow

Maven Central CI/IT Tests E2E Tests

Abstract

SkyWalking is an open source APM system, including monitoring, tracing, diagnosing capabilities for distributed system in Cloud Native architecture. The core features are following.

  • Service, service instance, endpoint(URI) metrics analysis.
    • Distributed tracing.
    • Metrics collecting, analysis, and customization.
    • Logging collecting and extracting metrics from them.
    • Distributed tracing and context propagation.
    • Collaboration across metrics, traces, and logs
  • Root cause analysis.
    • Profile the code on the runtime powered by in-process agent and ebpf profiler.
    • Network profiler for TCP, TCP/TLS, HTTP(s) traffic.
  • Service topology map analysis.
  • Service instance and endpoint(URI) dependency analysis.
  • Slow services and endpoints detecting.
  • Performance optimization.
  • In memory and remote cache performance monitoring, including Read and Write performance. Detect slow Cache access with keys.
  • Database performance monitoring. Detect slow SQL statements.
  • Message Queue performance and consuming latency monitoring.
  • Browser performance monitoring, and start tracing from browser.
  • Infrastructure monitoring. Kubernetes and Linux(VM, network, disk etc.).
  • Alerting.

SkyWalking supports to collect telemetry (metrics, traces, and logs) data from multiple sources and multiple formats, including

  1. Java, .NET Core, NodeJS, PHP, and Python auto-instrument agents.
  2. Go, C++, and Rust SDKs.
  3. Agent profiling for Java and Python.
  4. ebpf network profiling and ON/OFF CPU profiling.
  5. LUA agent especially for Nginx, OpenResty and Apache APISIX.
  6. Browser agent.
  7. Service Mesh Observability. Control plane and data plane.
  8. Metrics system, including Prometheus, OpenTelemetry, Micrometer(Spring Sleuth), Zabbix.
  9. Logs, including OpenTelemetry.
  10. Zipkin v1/v2 trace.(No Analysis).

Documentation

NOTICE, SkyWalking 8.0+ uses v3 protocols. They are incompatible with previous releases.

SkyWalking OAP is using the STAM(Streaming Topology Analysis Method) to analysis topology in the tracing based agent scenario for better performance. Read the paper of STAM for more details.

Downloads

Please head to the releases page to download a release of Apache SkyWalking.

Compiling project

Follow this document.

Code of conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please follow the REPORTING GUIDELINES to report unacceptable behavior.

Live Demo

Contact Us

  • Mail list: dev@skywalking.apache.org. Mail to dev-subscribe@skywalking.apache.org, follow the reply to subscribe the mail list.
  • Send Request to join SkyWalking slack mail to the mail list(dev@skywalking.apache.org), we will invite you in.
  • Twitter, ASFSkyWalking
  • QQ Group: 901167865, 392443393
  • bilibili B站 视频

Our Users

Hundreds of companies and organizations use SkyWalking for research, production, and commercial product. Visit our website to find the user page.

License

Apache 2.0 License.