con un clic
ci-e2e-debug
// Download and inspect CI e2e test logs from GitHub Actions artifacts. Use when investigating e2e test failures in CI.
// Download and inspect CI e2e test logs from GitHub Actions artifacts. Use when investigating e2e test failures in CI.
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.
Generate bytecode classes from DSL scripts (MAL, OAL, LAL, Hierarchy). Runs the compiler and dumps .class files for inspection.
Build SkyWalking OAP server, run javadoc checks, and verify checkstyle. Use to validate changes before submitting a PR.
| name | ci-e2e-debug |
| description | Download and inspect CI e2e test logs from GitHub Actions artifacts. Use when investigating e2e test failures in CI. |
| argument-hint | <RUN_ID or GitHub Actions URL> |
Download test log artifacts from a GitHub Actions CI run and inspect them for errors.
Find the artifact: Use gh api to list artifacts for the given CI run:
gh api repos/apache/skywalking/actions/runs/<RUN_ID>/artifacts --jq '.artifacts[] | {id: .id, name: .name}'
Download and extract: Download the artifact zip and extract it:
cd /tmp && rm -rf e2e-debug-logs && mkdir e2e-debug-logs && cd e2e-debug-logs
gh api repos/apache/skywalking/actions/artifacts/<ARTIFACT_ID>/zip > artifact.zip
unzip -o artifact.zip
Inspect OAP logs: Look for errors in the OAP server logs:
# Find OAP log files
find /tmp/e2e-debug-logs -name "skywalking-oap-*.log" -o -name "oap.log"
# Check for errors
grep -E "ERROR|Exception|FATAL|CannotCompileException" <log_file> | head -30
Inspect other component logs: Check BanyanDB, UI, and other pod logs as needed.
Report findings: Summarize the root cause error from the logs.
$SW_INFRA_E2E_LOG_DIRMockCoreModuleProvider. If a new service is added to CoreModule.services() but not registered in the mock, the exporter fails at startup with requiredCheck() error — but the OAP logs will show no errors (OAP is fine, the exporter subprocess is what fails). Check the test step that runs profile_exporter.sh.