home/docs/start/native-collector.md
Choose the native collector package when your monitoring workload does not depend on loading external JDBC drivers from ext-lib.
Typical native-friendly workloads include:
Compared with the JVM collector package, the native collector package is usually a better fit when you want:
The native collector package is not a drop-in replacement for every JVM collector scenario.
ext-lib at runtime.Use the JVM collector package if your monitoring depends on external JDBC drivers, especially:
mysql-connector-jojdbc8 and sometimes orai18njccThe JVM collector package remains cross-platform:
apache-hertzbeat-collector-{version}-bin.tar.gzThe native collector package is platform-specific:
apache-hertzbeat-collector-native-{version}-{platform}-bin.tar.gzapache-hertzbeat-collector-native-{version}-windows-amd64-bin.zipExamples:
apache-hertzbeat-collector-native-1.8.0-linux-amd64-bin.tar.gzapache-hertzbeat-collector-native-1.8.0-macos-arm64-bin.tar.gzapache-hertzbeat-collector-native-1.8.0-windows-amd64-bin.zipThe native collector package uses the same config/application.yml layout as the JVM collector package.
That means:
application.ymlext-lib, external JDBC drivers, or JVM-style runtime extensibility.mvn clean package -pl hertzbeat-collector-collector -am -Pnative builds a native collector package for the current host only.Collector Native Release GitHub Actions workflow during release preparation, not on every push or pull request.For package deployment steps, refer to Install HertzBeat via Package.