GraalVM native-image distribution of Apache SkyWalking OAP server

Clone this repo:
  1. 5ea6df6 Sync upstream to 476afadecd (11.1.0-SNAPSHOT): AI evaluation, AI agent conversations, native-image fixes (#34) by 吴晟 Wu Sheng · 6 days ago main
  2. 71fddc7 Release 0.4.0: bump version to next SNAPSHOT (#33) by 吴晟 Wu Sheng · 9 days ago
  3. 56e8c22 Report dirty paths in release preflight checks (#32) by 吴晟 Wu Sheng · 9 days ago
  4. d2c4f40 Sync upstream to v11.0.0: adopt all new rules, read-only DSL catalogs, DSL live debugger on the native image (#31) by 吴晟 Wu Sheng · 9 days ago
  5. 7976813 Sync upstream to 89624809f0 + adopt swctl admin e2e migration (#30) by 吴晟 Wu Sheng · 3 months ago

SkyWalking GraalVM Distro (Experimental)

Apache SkyWalking is an open-source APM and observability platform for distributed systems, providing metrics, tracing, logging, and profiling capabilities.

SkyWalking GraalVM Distro is a distribution of the same Apache SkyWalking OAP server, compiled as a GraalVM native image on JDK 25. It moves all dynamic code generation (OAL, MAL, LAL, Hierarchy via ANTLR4 + Javassist) and classpath scanning from runtime to build time, producing a ~203MB self-contained native binary with the full OAP feature set. No upstream source modifications required.

Key Differences from Upstream

  • Native binary instead of JVM — instant startup, ~512MB memory footprint
  • BanyanDB only — the sole supported storage backend
  • Fixed module set — modules selected at build time, no SPI discovery
  • Pre-compiled DSL — all DSL rules compiled at build time; the rule catalogs and the live debugger work, runtime hot-update does not

All existing SkyWalking agents, UI, and tooling work unchanged.

Quick Start

docker run -d \
  -p 12800:12800 \
  -p 11800:11800 \
  -e SW_STORAGE_BANYANDB_TARGETS=<banyandb-host>:17912 \
  apache/skywalking-graalvm-distro:latest

Docker Images

RegistryImage
Docker Hubapache/skywalking-graalvm-distro
GHCRghcr.io/apache/skywalking-graalvm-distro

Available for linux/amd64 and linux/arm64. macOS arm64 (Apple Silicon) native binary is available on the GitHub Release page.

Documentation

Full documentation is available at skywalking.apache.org/docs.

License

Apache License 2.0