Beacon¶
Beacon provides automatic instrumentation based on OpenTelemetry. It collects telemetry from supported frameworks and libraries without changing application source code. Configure a runtime agent, preload module, or wrapper command to connect applications to Guance, inspect traces, and optionally enable profiling and Security for supported languages.
How it works¶
The DataKit OpenTelemetry input receives traces, metrics, and logs. Profiles use the separate DataKit Profile input. Available signals depend on the language release and enabled components; installing an agent does not automatically produce every signal.
Choose a language¶
The zero-code entry points and optional capabilities are listed below. See each language guide for installation steps.
| Language | Zero-code entry point | Profiling | Security |
|---|---|---|---|
| Java | One Agent JAR loaded with JVM -javaagent |
Experimental JFR on JDK 11+ | Optional |
| Python | Prefix the existing command with beacon |
pprof uploads | Standard-GIL CPython 3.11–3.14 |
| Node.js | Preload with NODE_OPTIONS |
Wall and heap profiles | Node.js 22.22.3+ or 24.11.1+ with ESM preload |
| .NET | Launch with beacon-dotnet run |
No supported user setup | No released capability |
| PHP | Native hook and Composer autoloading | No supported user setup | No released capability |
Profiling and Security are disabled by default. Profiling setup is included in each supported language guide. See Security for runtime requirements and activation.
Quick start¶
- Install DataKit, then enable its OpenTelemetry input using Common configuration.
- Choose a language above and install the specified Beacon release.
- Configure the service name, OTLP protocol, and DataKit endpoint, then launch the application through the agent.
- Send real application requests, then open APM > Traces in Guance and filter by service name.
- To inspect code hotspots, enable profiling in the language guide and view the data under APM > Profiling.
Instrumentation scope
Zero-code setup requires installing the agent, configuring the runtime, and restarting the application. Automatic instrumentation covers supported frameworks and libraries. Use OpenTelemetry APIs when custom business operations need additional instrumentation. Avoid loading multiple automatic agents in the same process to prevent duplicate collection.
Related documentation¶
- Common configuration: DataKit receivers, service identity, and OTLP settings.
- Security: Security findings and runtime SBOM delivery over OTLP Logs.
- Troubleshooting: Agent loading, networking, protocols, and export checks.
- Beacon open-source projects: Source code and language releases.