Apache SkyWalking is a free, open source monitoring & observability project written in Java and released under Apache-2.0. It has 24,955 GitHub stars, 6,634 forks and 41 open issues, and was last pushed 21 hours ago. On this registry it ranks #11 of 97 tracked projects in Monitoring & Observability, with 5 head-to-head comparisons available. It gained 7 stars over the last 6 tracked days.

Apache SkyWalking — Distributed tracing, metrics, logs, and GenAI monitoring in one

What is Apache SkyWalking?

Apache SkyWalking is an open-source application performance monitoring (APM) system for distributed systems in cloud native architectures, built for teams that run microservices across Kubernetes and container-based environments.

What it is

Apache SkyWalking is an Apache Software Foundation project, written in Java and released under the Apache-2.0 licence, that provides monitoring, tracing and diagnosing capabilities for distributed systems. Its repository describes it as an APM system designed especially for microservices, cloud native and container-based architectures, and its topic list places it in application performance monitoring, distributed tracing, observability, service mesh and eBPF territory alongside standards such as OpenTelemetry and Prometheus. It covers the three telemetry signals that observability teams usually assemble from separate systems: distributed tracing, metrics and logs.

The concrete problem it solves is fragmentation across the observability stack. Metrics, traces and logs from mature ecosystems such as Zipkin, OpenTelemetry, Prometheus, Zabbix and Fluentd are supported and processed together, and SkyWalking's native meter format plus the widely known formats from OpenTelemetry, Telegraf and Zabbix all run through the same script pipeline. Rather than replacing each of those systems, it consolidates them, adding service topology analysis, service-centric observability and APIs dashboards on top of data that would otherwise sit in disconnected stores. Storage is handled by BanyanDB, an observability database created in 2022 that aims to ingest, analyze and store telemetry and observability data, and the project states that one SkyWalking cluster can collect and analyze 100+ billion telemetry data points.

Key capabilities

  • End-to-end distributed tracing with service topology analysis, service-centric observability and APIs dashboards.
  • Agents for Java, .NET Core, PHP, NodeJS, Golang, LUA, Rust, C++, client JavaScript and Python, under active development and maintenance.
  • The Rover agent, an eBPF-powered monitor and profiler that watches Kubernetes deployments and diagnoses CPU and network performance.
  • Consistent metrics aggregation across SkyWalking's native meter format and external formats from OpenTelemetry, Telegraf and Zabbix through one script pipeline.
  • A log management pipeline supporting log formatting, metric extraction and various sampling policies at high performance.
  • Alerting rules set at service, deployment and API level, with forwarding of alarms and all telemetry data to third parties.
  • Machine learning and AI analysis of observability data, including HTTP URI pattern recognition and automatic metric baseline calculation for intelligent alerting.

Who uses it and how

  • Platform and SRE teams running microservices on Kubernetes use the Rover eBPF agent to profile deployments and diagnose CPU and network issues without instrumenting each service.
  • Teams already committed to OpenTelemetry, Prometheus, Zipkin, Zabbix or Fluentd keep those pipelines and add SkyWalking for topology, dashboards and alerting over the same data.
  • Large installations rely on the stated scaling envelope of 100+ billion telemetry data points collected and analyzed from a single cluster.
  • Full-stack product teams combine the client JavaScript agent with backend agents for Java, .NET Core, PHP, NodeJS, Golang, LUA, Rust or Python to trace requests end to end.
  • Teams that need API-level alerting use URI pattern recognition and automatic metric baselines to detect anomalies rather than hand-writing thresholds.

Getting started

Releases are downloaded from the project's releases page at skywalking.apache.org/downloads/, or the project can be compiled following docs/en/guides/How-to-build.md. A preview deployment can be set up quickly through the SkyWalking showcase documentation, and a live demo with the native UI and Grafana, plus a 3D Infrastructure Map powered by Horizon UI, is published on the website.

How it compares

SkyWalking sits alongside the tools it ingests from: Zipkin, OpenTelemetry, Prometheus, Zabbix, Fluentd and Telegraf, plus Grafana as a visualization layer. Where those projects each own one signal or one pipeline stage, SkyWalking folds traces, metrics and logs into a single APM system with its own database, BanyanDB, and its own alerting and telemetry pipelines.

When to use it — and when not to

Adopters must operate a SkyWalking cluster plus observability storage such as BanyanDB, and the README does not document the rest of the production prerequisites, with sizing beyond the 100+ billion telemetry figure left to the official documentation. It is a poor fit for teams that want a managed service with no infrastructure of their own. The README is also thin on installation detail: quick-start commands live in separate documentation, and the main repository points readers to the downloads page and a build guide instead.

project readme (upstream, from github) — read inline

Apache SkyWalking

Sky Walking logo

SkyWalking: an APM (Application Performance Monitoring) system, especially designed for microservices, cloud native and container-based architectures.

GitHub stars X Follow

GitHub Release

Abstract

SkyWalking is an open-source APM system that provides monitoring, tracing and diagnosing capabilities for distributed systems in Cloud Native architectures.

  • Distributed Tracing
    • End-to-end distributed tracing. Service topology analysis, service-centric observability and APIs dashboards.
  • Agents for your stack
    • Java, .Net Core, PHP, NodeJS, Golang, LUA, Rust, C++, Client JavaScript and Python agents with active development and maintenance.
  • eBPF early adoption
    • Rover agent works as a monitor and profiler powered by eBPF to monitor Kubernetes deployments and diagnose CPU and network performance.
  • Scaling
    • 100+ billion telemetry data could be collected and analyzed from one SkyWalking cluster.
  • Mature Telemetry Ecosystems Supported
    • Metrics, Traces, and Logs from mature ecosystems are supported, e.g. Zipkin, OpenTelemetry, Prometheus, Zabbix, Fluentd
  • Native APM Database
    • BanyanDB, an observability database, created in 2022, aims to ingest, analyze and store telemetry/observability data.
  • Consistent Metrics Aggregation
    • SkyWalking native meter format and widely known metrics format(OpenTelemetry, Telegraf, Zabbix, e.g.) are processed through the same script pipeline.
  • Log Management Pipeline
    • Support log formatting, extract metrics, various sampling policies through script pipeline in high performance.
  • Alerting and Telemetry Pipelines
    • Support service-centric, deployment-centric, API-centric alarm rule setting. Support forwarding alarms and all telemetry data to 3rd party.
  • AI Power Enabled
    • Machine Learning (ML) and Artificial Intelligence (AI) analyze observability data to identify patterns and enhance capabilities, such as recognizing HTTP URI patterns and automatically calculating metric baselines for intelligent alerting, improving anomaly detection.

Live Demo

SkyWalking 3D Infrastructure Map

Documentation

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.

Contact Us

Our Users

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

License

Apache 2.0 License.

Frequently asked questions

Is Apache SkyWalking free to use?

Apache SkyWalking is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Apache SkyWalking do?

Distributed tracing, metrics, logs, and GenAI monitoring in one

What is Apache SkyWalking written in?

Apache SkyWalking is primarily written in Java. Its source is publicly available at https://github.com/apache/skywalking, and it has 24,955 GitHub stars.