Apache SkyWalking logo

Apache SkyWalking

Cloud-native APM for distributed tracing and observability

Apache SkyWalking delivers application performance monitoring, distributed tracing, and diagnostics for microservices and cloud-native architectures with multi-language agent support.

Apache SkyWalking banner

Overview

Overview

Apache SkyWalking is an APM system purpose-built for microservices, cloud-native, and container-based architectures. It provides end-to-end distributed tracing, service topology analysis, and comprehensive observability across your entire stack.

Capabilities

SkyWalking supports agents for Java, .NET Core, PHP, NodeJS, Golang, Rust, Python, and more, enabling monitoring across polyglot environments. The platform ingests telemetry from mature ecosystems including OpenTelemetry, Prometheus, Zipkin, and Zabbix, processing metrics, traces, and logs through unified pipelines. An eBPF-powered Rover agent profiles Kubernetes deployments for CPU and network diagnostics.

With BanyanDB—a native observability database—SkyWalking scales to handle 100+ billion telemetry data points per cluster. Service-centric alerting, log management pipelines, and AI-powered anomaly detection enhance operational intelligence. Machine learning automatically identifies HTTP URI patterns and calculates metric baselines for intelligent alerting.

Deployment

Designed for production environments requiring deep visibility into distributed systems, SkyWalking supports flexible telemetry forwarding and integrates with Grafana for visualization. Hundreds of organizations rely on it for research, production monitoring, and commercial deployments.

Highlights

Multi-language agents (Java, .NET, Go, Python, Rust, PHP, NodeJS) with active maintenance
Scales to 100+ billion telemetry data points per cluster with native BanyanDB storage
eBPF-powered Rover agent for Kubernetes CPU and network profiling
AI-driven anomaly detection with automatic metric baseline calculation

Pros

  • Comprehensive multi-language agent ecosystem for polyglot environments
  • Native support for OpenTelemetry, Prometheus, Zipkin, and other mature telemetry standards
  • Purpose-built observability database (BanyanDB) optimized for APM workloads
  • Service-centric alerting with flexible telemetry forwarding to third-party systems

Considerations

  • Steeper learning curve compared to simpler APM solutions
  • BanyanDB is relatively new (created 2022) with evolving maturity
  • Requires infrastructure investment for large-scale deployments
  • Java-centric codebase may require JVM expertise for customization

Managed products teams compare with

When teams consider Apache SkyWalking, these hosted platforms usually appear on the same shortlist.

Datadog logo

Datadog

Observability platform for metrics, logs, and traces

Datadog APM logo

Datadog APM

Cloud APM with code-level distributed tracing and correlation to logs/metrics.

Dynatrace logo

Dynatrace

All‑in‑one observability with AI‑assisted root cause

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Organizations running microservices and cloud-native architectures at scale
  • Teams needing polyglot monitoring across multiple language runtimes
  • Kubernetes environments requiring eBPF-based profiling and diagnostics
  • Enterprises consolidating telemetry from OpenTelemetry, Prometheus, and legacy systems

Not ideal when

  • Small monolithic applications with simple monitoring needs
  • Teams seeking fully managed SaaS APM without infrastructure overhead
  • Projects requiring immediate production-grade observability database maturity
  • Organizations without capacity to manage distributed APM infrastructure

How teams use it

Microservices Performance Troubleshooting

Trace requests across 50+ services to identify latency bottlenecks and optimize critical user journeys in production.

Kubernetes Network Diagnostics

Deploy eBPF Rover agents to profile pod-to-pod network performance and diagnose CPU contention without code instrumentation.

Multi-Vendor Telemetry Consolidation

Unify metrics from Prometheus exporters, OpenTelemetry traces, and Zipkin spans into a single observability platform.

Intelligent Anomaly Detection

Leverage ML-powered baseline calculation to automatically detect traffic spikes and performance degradation with reduced false positives.

Tech snapshot

Java98%
Shell1%
ANTLR1%
Lua1%
FreeMarker1%
Python1%

Tags

dapperzabbixmetricsobservabilitydistributed-tracingopen-telemetryprometheusservice-meshskywalkingebpfweb-performanceloggingtelegrafapm

Frequently asked questions

What languages does SkyWalking support for application instrumentation?

SkyWalking provides actively maintained agents for Java, .NET Core, PHP, NodeJS, Golang, Rust, Python, C++, Lua, and client-side JavaScript.

Can SkyWalking ingest telemetry from existing observability tools?

Yes, it natively supports metrics, traces, and logs from OpenTelemetry, Prometheus, Zipkin, Zabbix, Telegraf, and Fluentd through unified pipelines.

What is BanyanDB and why use it over other storage backends?

BanyanDB is SkyWalking's native observability database optimized for APM workloads, designed to efficiently ingest, analyze, and store telemetry data at scale (100+ billion data points per cluster).

Does SkyWalking require code changes to monitor applications?

Language agents typically use auto-instrumentation (e.g., Java agent via JVM flags). The eBPF Rover agent monitors Kubernetes workloads without any code or configuration changes.

How does SkyWalking handle alerting for distributed systems?

It supports service-centric, deployment-centric, and API-centric alarm rules with AI-powered baseline calculation. Alerts and telemetry can be forwarded to third-party systems.

Project at a glance

Active
Stars
24,737
Watchers
24,737
Forks
6,643
LicenseApache-2.0
Repo age10 years old
Last commityesterday
Primary languageJava

Last synced 23 hours ago