ワンクリックで
generate-classes
// Generate bytecode classes from DSL scripts (MAL, OAL, LAL, Hierarchy). Runs the compiler and dumps .class files for inspection.
// Generate bytecode classes from DSL scripts (MAL, OAL, LAL, Hierarchy). Runs the compiler and dumps .class files for inspection.
Add a new monitoring target / layer to SkyWalking OAP. Orients you to the OAL / MAL / LAL / SpanListener / SegmentListener extension points, the UI template + submodule touchpoints, the docs set that must move together, and the cross-cutting traps that don't live in any one skill.
Verify, commit, and push changes on a PR branch. Runs pre-flight checks (compile, checkstyle, license headers) before every push. Also creates the PR if one doesn't exist yet.
Run SkyWalking E2E tests locally
Rebuild the SkyWalking distribution and OAP Docker image after source changes. Use before running e2e tests so the image reflects your code changes. Avoids the "image looks updated but runtime has stale jars" trap.
Download and inspect CI e2e test logs from GitHub Actions artifacts. Use when investigating e2e test failures in CI.
Build SkyWalking OAP server, run javadoc checks, and verify checkstyle. Use to validate changes before submitting a PR.
| name | generate-classes |
| description | Generate bytecode classes from DSL scripts (MAL, OAL, LAL, Hierarchy). Runs the compiler and dumps .class files for inspection. |
| argument-hint | <mal|oal|lal|hierarchy|all> |
Run the v2 compiler (ANTLR4 + Javassist) to generate bytecode classes from DSL scripts and dump .class files to disk for inspection.
mal — MAL expression classes./mvnw test -pl oap-server/analyzer/dsl-scripts-test \
-Dtest=MALExpressionExecutionTest -DfailIfNoTests=false -Dcheckstyle.skip
Output location: oap-server/analyzer/dsl-scripts-test/src/test/resources/scripts/mal/**/*.generated-classes/
oal — OAL metrics/dispatcher/builder classes./mvnw test -pl oap-server/oal-rt \
-Dtest=RuntimeOALGenerationTest -DfailIfNoTests=false -Dcheckstyle.skip
Output location: oap-server/oal-rt/target/test-classes/metrics/, metrics/builder/, dispatcher/
lal — LAL filter/extractor classes./mvnw test -pl oap-server/analyzer/dsl-scripts-test \
-Dtest=LALExpressionExecutionTest -DfailIfNoTests=false -Dcheckstyle.skip
Output location: oap-server/analyzer/dsl-scripts-test/src/test/resources/scripts/lal/**/*.generated-classes/
hierarchy — Hierarchy rule classes./mvnw test -pl oap-server/analyzer/dsl-scripts-test \
-Dtest=HierarchyRuleExecutionTest -DfailIfNoTests=false -Dcheckstyle.skip
Output location: oap-server/analyzer/dsl-scripts-test/src/test/resources/scripts/hierarchy-rule/*.generated-classes/
all or no argument — generate all DSLsRun all four commands above sequentially.
Print the output location for the requested DSL so the user knows where to find the generated .class files. Use javap to decompile:
javap -c -p <path-to-class-file>
./mvnw clean -pl oap-server/analyzer/dsl-scripts-test