Skip to content

Check if tracer is active before starting a transaction#20852

Merged
jalvz merged 6 commits intoelastic:masterfrom
jalvz:check-tracer-active
Sep 3, 2020
Merged

Check if tracer is active before starting a transaction#20852
jalvz merged 6 commits intoelastic:masterfrom
jalvz:check-tracer-active

Conversation

@jalvz
Copy link
Copy Markdown
Contributor

@jalvz jalvz commented Aug 31, 2020

What does this PR do?

StartTransaction is a cheap operation if the APM tracer is disabled, but not totally free. This checks if the tracer is active before starting a transaction.

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in CHANGELOG.next.asciidoc or CHANGELOG-developer.next.asciidoc.

Related issues

https://discuss.elastic.co/t/tracer-in-libbeat-is-always-enabled/245742

@jalvz jalvz added enhancement Team:Integrations Label for the Integrations team Team:apm APM Server team issues/PRs labels Aug 31, 2020
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/integrations (Team:Integrations)

@botelastic botelastic bot added needs_team Indicates that the issue/PR needs a Team:* label and removed needs_team Indicates that the issue/PR needs a Team:* label labels Aug 31, 2020
@elasticmachine
Copy link
Copy Markdown
Contributor

elasticmachine commented Aug 31, 2020

💔 Tests Failed

Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Build Cause: [Pull request #20852 updated]

  • Start Time: 2020-09-03T11:49:20.393+0000

  • Duration: 71 min 53 sec

Test stats 🧪

Test Results
Failed 2
Passed 19618
Skipped 1654
Total 21274

Test errors

Expand to view the tests failures

  • Name: Build and Test / Metricbeat Windows / TestGetServiceStates – service

    • Age: 1
    • Duration: 0.08
    • Error Details: Failed
  • Name: Build and Test / Metricbeat OSS Python Integration tests / test_remote_write – metricbeat.module.prometheus.test_prometheus.TestRemoteWrite

    • Age: 1
    • Duration: 63.234
    • Error Details: beat.beat.TimeoutError: Timeout waiting for 'cond' to be true. Waited 60 seconds.

Steps errors

Expand to view the steps failures

  • Name: Mage pythonIntegTest

    • Description: mage pythonIntegTest

    • Duration: 37 min 38 sec

    • Start Time: 2020-09-03T12:15:04.696+0000

    • log

  • Name: Mage build unitTest

    • Description: mage build unitTest

    • Duration: 8 min 35 sec

    • Start Time: 2020-09-03T12:18:54.651+0000

    • log

  • Name: Install python3:3.8

    • Description:

    • Duration: 22 min 31 sec

    • Start Time: 2020-09-03T12:16:47.446+0000

    • log

Log output

Expand to view the last 100 lines of log output

[2020-09-03T12:59:44.045Z] + rm source.tgz
[2020-09-03T12:59:44.060Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats
[2020-09-03T12:59:44.083Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Lint
[2020-09-03T12:59:44.172Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Elastic-Agent-Mac-OS-X
[2020-09-03T12:59:44.254Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-oss-Mac-OS-X
[2020-09-03T12:59:44.334Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Elastic-Agent-x-pack
[2020-09-03T12:59:44.415Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-x-pack-Mac-OS-X
[2020-09-03T12:59:44.508Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-crosscompile
[2020-09-03T12:59:44.592Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Winlogbeat-oss
[2020-09-03T12:59:44.678Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Filebeat-x-pack-Mac-OS-X
[2020-09-03T12:59:44.768Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/dockerlogbeat
[2020-09-03T12:59:44.852Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Journalbeat
[2020-09-03T12:59:44.954Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Filebeat-Mac-OS-X
[2020-09-03T12:59:45.049Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Functionbeat-x-pack
[2020-09-03T12:59:45.139Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Generators-Metricbeat-Linux
[2020-09-03T12:59:45.222Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Generators-Metricbeat-Mac-OS-X
[2020-09-03T12:59:45.323Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Packetbeat-Linux
[2020-09-03T12:59:45.417Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack-Mac-OS-X
[2020-09-03T12:59:45.499Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Elastic-Agent-x-pack-Windows
[2020-09-03T12:59:45.585Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-OSS-Unit-tests
[2020-09-03T12:59:45.669Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Packetbeat-Mac-OS-X
[2020-09-03T12:59:45.758Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Functionbeat-Mac-OS-X-x-pack
[2020-09-03T12:59:45.845Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Heartbeat-oss
[2020-09-03T12:59:45.932Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-oss-Windows
[2020-09-03T12:59:46.018Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-x-pack-Windows
[2020-09-03T12:59:46.100Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Generators-Beat-Mac-OS-X
[2020-09-03T12:59:46.187Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Heartbeat-Windows
[2020-09-03T12:59:46.269Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-x-pack
[2020-09-03T12:59:46.352Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Auditbeat-oss-Linux
[2020-09-03T12:59:46.437Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Filebeat-x-pack-Windows
[2020-09-03T12:59:46.519Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Winlogbeat-Windows
[2020-09-03T12:59:46.601Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-crosscompile
[2020-09-03T12:59:46.690Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-Windows
[2020-09-03T12:59:46.779Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Libbeat-x-pack
[2020-09-03T12:59:46.876Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Filebeat-Windows
[2020-09-03T12:59:46.962Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Packetbeat-Windows
[2020-09-03T12:59:47.044Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Heartbeat-Mac-OS-X
[2020-09-03T12:59:47.126Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Functionbeat-Windows
[2020-09-03T12:59:47.211Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack-Windows
[2020-09-03T12:59:47.290Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-Mac-OS-X
[2020-09-03T12:59:47.400Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Generators-Beat-Linux
[2020-09-03T12:59:47.502Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Filebeat-x-pack
[2020-09-03T12:59:47.584Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Libbeat-oss
[2020-09-03T12:59:47.677Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Filebeat-oss
[2020-09-03T12:59:47.760Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Winlogbeat-Windows-x-pack
[2020-09-03T12:59:47.846Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Libbeat-crosscompile
[2020-09-03T12:59:47.926Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Libbeat-stress-tests
[2020-09-03T12:59:48.005Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-OSS-Python-Integration-tests
[2020-09-03T12:59:48.084Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-OSS-Go-Integration-tests
[2020-09-03T12:59:48.165Z] Running in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack
[2020-09-03T12:59:48.568Z] + cat
[2020-09-03T12:59:48.569Z] + /usr/local/bin/runbld ./runbld-script --job-name elastic+beats+pull-request
[2020-09-03T12:59:48.569Z] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
[2020-09-03T12:59:55.166Z] runbld>>> runbld started
[2020-09-03T12:59:55.167Z] runbld>>> 1.6.12/f45d832f2ba0aa2722ab4ec1fda8ad140f027f8b
[2020-09-03T12:59:57.716Z] runbld>>> The following profiles matched the job 'elastic+beats+pull-request' in order of occurrence in the config (last value wins).
[2020-09-03T12:59:57.716Z] runbld>>> Matches in the system config:
[2020-09-03T12:59:57.716Z] runbld>>> - Matched ^elastic\+beats
[2020-09-03T12:59:57.717Z] runbld>>> - Matched ^elastic\+beats\+pull-request
[2020-09-03T12:59:58.659Z] runbld>>> Debug logging enabled.
[2020-09-03T12:59:58.659Z] runbld>>> Storing result
[2020-09-03T12:59:58.920Z] runbld>>> Store result: created {:total 2, :successful 2, :failed 0} 1
[2020-09-03T12:59:58.920Z] runbld>>> BUILD: https://c150076387b5421f9154dfbf536e5c60.us-west1.gcp.cloud.es.io:9243/build-1597739501209/t/20200903125958-E8CC00C0
[2020-09-03T12:59:58.921Z] runbld>>> Adding system facts.
[2020-09-03T12:59:59.866Z] runbld>>> Adding vcs info for the latest commit:  6be624efc088fa574a1f09a69f32216add536dc3
[2020-09-03T12:59:59.866Z] runbld>>> >>>>>>>>>>>> SCRIPT EXECUTION BEGIN >>>>>>>>>>>>
[2020-09-03T13:00:00.127Z] runbld>>> Adding /usr/lib/jvm/java-8-openjdk-amd64/bin to the path.
[2020-09-03T13:00:00.127Z] Processing JUnit reports with runbld...
[2020-09-03T13:00:00.127Z] + echo 'Processing JUnit reports with runbld...'
[2020-09-03T13:00:00.388Z] runbld>>> <<<<<<<<<<<< SCRIPT EXECUTION END <<<<<<<<<<<<
[2020-09-03T13:00:00.388Z] runbld>>> DURATION: 28ms
[2020-09-03T13:00:00.388Z] runbld>>> STDOUT: 40 bytes
[2020-09-03T13:00:00.388Z] runbld>>> STDERR: 49 bytes
[2020-09-03T13:00:00.388Z] runbld>>> WRAPPED PROCESS: SUCCESS (0)
[2020-09-03T13:00:00.388Z] runbld>>> Searching for build metadata in /var/lib/jenkins/workspace/Beats_beats_PR-20852
[2020-09-03T13:00:01.344Z] runbld>>> Storing build metadata: 
[2020-09-03T13:00:01.344Z] runbld>>> Adding test report.
[2020-09-03T13:00:01.344Z] runbld>>> Searching for junit test output files with the pattern: TEST-.*\.xml$ in: /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats
[2020-09-03T13:00:02.294Z] runbld>>> Found 139 test output files
[2020-09-03T13:00:04.846Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack/x-pack/metricbeat/build/TEST-go-integration-iis.xml
[2020-09-03T13:00:04.846Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack/x-pack/metricbeat/build/TEST-go-integration-openmetrics.xml
[2020-09-03T13:00:04.846Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack/x-pack/metricbeat/build/TEST-go-integration-activemq.xml
[2020-09-03T13:00:04.846Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack/x-pack/metricbeat/build/TEST-go-integration-istio.xml
[2020-09-03T13:00:04.846Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-x-pack/x-pack/metricbeat/build/TEST-go-integration-tomcat.xml
[2020-09-03T13:00:05.790Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-OSS-Go-Integration-tests/metricbeat/build/TEST-go-integration-graphite.xml
[2020-09-03T13:00:05.790Z] runbld>>> No testsuite node found in /var/lib/jenkins/workspace/Beats_beats_PR-20852/src/github.com/elastic/beats/Metricbeat-OSS-Go-Integration-tests/metricbeat/build/TEST-go-integration-windows.xml
[2020-09-03T13:00:06.051Z] runbld>>> Test output logs contained: Errors: 0 Failures: 2 Tests: 21121 Skipped: 1384
[2020-09-03T13:00:06.051Z] runbld>>> Storing result
[2020-09-03T13:00:06.051Z] runbld>>> FAILURES: 2
[2020-09-03T13:00:06.623Z] runbld>>> Store result: updated {:total 2, :successful 2, :failed 0} 2
[2020-09-03T13:00:06.623Z] runbld>>> BUILD: https://c150076387b5421f9154dfbf536e5c60.us-west1.gcp.cloud.es.io:9243/build-1597739501209/t/20200903125958-E8CC00C0
[2020-09-03T13:00:06.885Z] runbld>>> Email notification disabled by environment variable.
[2020-09-03T13:00:06.885Z] runbld>>> Slack notification disabled by environment variable.
[2020-09-03T13:00:12.374Z] Running on Jenkins in /var/lib/jenkins/workspace/Beats_beats_PR-20852
[2020-09-03T13:00:12.492Z] [INFO] getVaultSecret: Getting secrets
[2020-09-03T13:00:12.568Z] Masking supported pattern matches of $VAULT_ADDR or $VAULT_ROLE_ID or $VAULT_SECRET_ID
[2020-09-03T13:00:13.350Z] + chmod 755 generate-build-data.sh
[2020-09-03T13:00:13.350Z] + ./generate-build-data.sh https://beats-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/Beats/beats/PR-20852/ https://beats-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/Beats/beats/PR-20852/runs/5 FAILURE 4252696
[2020-09-03T13:00:13.350Z] INFO: curl https://beats-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/Beats/beats/PR-20852/runs/5/steps/?limit=10000 -o steps-info.json
[2020-09-03T13:00:15.833Z] INFO: curl https://beats-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/Beats/beats/PR-20852/runs/5/tests/?status=FAILED -o tests-errors.json

@jalvz jalvz requested review from axw and jsoriano September 1, 2020 09:20
Co-authored-by: Andrew Wilkins <axwalk@gmail.com>
Copy link
Copy Markdown
Member

@jsoriano jsoriano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing this!

@jalvz jalvz merged commit 6adf80c into elastic:master Sep 3, 2020
v1v added a commit to v1v/beats that referenced this pull request Sep 3, 2020
…ne-2.0

* upstream/master:
  [Metricbeat][test] Disable ec2 flaky test (elastic#20959)
  Check if tracer is active before starting a transaction (elastic#20852)
  [Elastic Agent] Add support for variable replacement from providers (elastic#20839)
  Only request wildcard expansion for hidden indices if supported (elastic#20938)
  [Ingest Manager] New agent structure (symlinks) (elastic#20400)
  [Ingest Manager] Print a message confirming shutdown (elastic#20948)
  Skip flaky test on unix input (elastic#20942)
  [Ingest Manager] Align introspect-inspect naming in code (elastic#20952)
  [Filebeat][zeek] Map new x509 fields for ssl module (elastic#20927)
  [CI] fix regression with variable name (elastic#20930)
  [Autodiscover] Handle input-not-finished errors in config reload (elastic#20915)
  [Ingest Manager] Remove Success from fleet contract (elastic#20449)
v1v added a commit to v1v/beats that referenced this pull request Sep 3, 2020
…-faster

* upstream/master:
  [Metricbeat][test] Disable ec2 flaky test (elastic#20959)
  Check if tracer is active before starting a transaction (elastic#20852)
  [Elastic Agent] Add support for variable replacement from providers (elastic#20839)
  Only request wildcard expansion for hidden indices if supported (elastic#20938)
  [Ingest Manager] New agent structure (symlinks) (elastic#20400)
  [Ingest Manager] Print a message confirming shutdown (elastic#20948)
  Skip flaky test on unix input (elastic#20942)
  [Ingest Manager] Align introspect-inspect naming in code (elastic#20952)
  [Filebeat][zeek] Map new x509 fields for ssl module (elastic#20927)
jalvz added a commit to jalvz/beats that referenced this pull request Sep 4, 2020
jalvz added a commit to jalvz/beats that referenced this pull request Sep 4, 2020
melchiormoulin pushed a commit to melchiormoulin/beats that referenced this pull request Oct 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Team:apm APM Server team issues/PRs Team:Integrations Label for the Integrations team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants