apm-agent-nodejs
apm-agent-nodejs copied to clipboard
ci: send github actions and tests as distributed traces
What
Enable traces for the steps/jobs executed in the GitHub actions and also the test results.
For such I used:
- https://github.com/inception-health/otel-upload-test-artifact-action
- https://github.com/inception-health/otel-export-trace-action
Why
I've been playing a bit and it looks promising, though to make this work it's required to merge this PR since the actions will not work until then
Actions
- [x] secrets for the opentelemetry backend
:green_heart: Build Succeeded
the below badges are clickable and redirect to their specific view in the CI or DOCS
![]()
![]()
![]()
![]()
![]()
Expand to view the summary
Build stats
-
Start Time: 2023-01-16T16:34:45.740+0000
-
Duration: 23 min 18 sec
Test stats :test_tube:
| Test | Results |
|---|---|
| Failed | 0 |
| Passed | 320238 |
| Skipped | 0 |
| Total | 320238 |
:robot: GitHub comments
Expand to view the GitHub comments
To re-run your PR in the CI, just comment with:
-
/test: Re-trigger the build. -
run module tests for <modules>: Run TAV tests for one or more modules, where<modules>can be either a comma separated list of modules (e.g. memcached,redis) or the string literal ALL to test all modules -
run benchmark tests: Run the benchmark test only. -
runelasticsearch-ci/docs: Re-trigger the docs validation. (use unformatted text in the comment!)
I wonder if it is possible to test these changes on a fork of this repo before pushing them into the main branch on the primary?
I tested it out in some other projects.
I could split the change in two PRs:
.github/workflows/opentelemetry.ymlin a new PR- remain this one, so we can verify everything works as expected.
I tested it out in some other projects.
@v1v OK, cool. The description of this made it sound like this was totally experimental but if you've already been looking at it that makes me feel a bit better. No need to split it up IMHO.
I already enabled a similar set of actions in elastic/beats.git and https://github.com/elastic/beats/pull/32267 and it's the one that contains the example with the traces (github action + test results)
Where are these traces going to end up? Is it in an internal cluster?
Yes, that's one of the cluster we have been using for quite sometime, for tracking all the CI/CD events, I'll send you the URL, I guess I could expose it as it's secured and only accessible with SSO, but to play secure, I won't do it unless it's required
@v1v Where does this data end up? I see that OTLP_ENDPOINT is used in the apm-pipeline-library action, but I don't see where that value is set.
@v1v Where does this data end up? I see that OTLP_ENDPOINT is used in the apm-pipeline-library action, but I don't see where that value is set.
I'll DM