Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check native environment before starting #25186

Merged
merged 3 commits into from
Apr 21, 2021
Merged

Conversation

urso
Copy link

@urso urso commented Apr 20, 2021

  • Enhancement

What does this PR do?

On Windows/Linux it is possible to run 32bit binaries. Now a check will be run to fail on startup if the architecture does not match the binaries architecture.

Why is it important?

Running Beats/Agent build for 32bits sometimes leads to problems on 64bit platforms. Some system metrics do have different sizing on 32 and 64bit architectures, which can trip up Agent/Beats wrongly interpreting the given data.

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.

Author's Checklist

  • [ ]

How to test this PR locally

The change contains an unit test.

Compile Beats or Agent with GOARCH=386 on a 64bit linux/windows and try to run it. The binary fails with exit code 1 + complains that you tried to run a 32bit binary on a 64bit system.

Related issues

Running Beats/Agent build for 32bits sometimes leads to problems on
64bit platforms. Some system metrics do have different sizing on 32 and
64bit architectures, which can trip up Agent/Beats wrongly interpreting
the given data.

On Windows/Linux it is possible to run 32bit binaries. Now a check will
be run to fail on startup if the architecture does not match the
binaries architecture.
@urso urso added review Team:Elastic-Agent Label for the Agent team labels Apr 20, 2021
@elasticmachine
Copy link
Collaborator

Pinging @elastic/agent (Team:Agent)

@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 Apr 20, 2021
@urso urso added the backport-v7.13.0 Automated backport with mergify label Apr 20, 2021
@elasticmachine
Copy link
Collaborator

elasticmachine commented Apr 20, 2021

💚 Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Build Cause: Pull request #25186 updated

  • Start Time: 2021-04-20T23:00:14.705+0000

  • Duration: 110 min 2 sec

  • Commit: 4a64059

Test stats 🧪

Test Results
Failed 0
Passed 47157
Skipped 5148
Total 52305

Trends 🧪

Image of Build Times

Image of Tests

💚 Flaky test report

Tests succeeded.

Expand to view the summary

Test stats 🧪

Test Results
Failed 0
Passed 47157
Skipped 5148
Total 52305

@urso urso added the backport-v7.14.0 Automated backport with mergify label Apr 21, 2021
Copy link
Contributor

@ph ph left a comment

Choose a reason for hiding this comment

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

Strategy looks good to me.

TIL about Linux 32 bits

@urso urso merged commit 7253026 into elastic:master Apr 21, 2021
@urso urso deleted the limit-architecture branch April 21, 2021 14:56
mergify bot pushed a commit that referenced this pull request Apr 21, 2021
Running Beats/Agent build for 32bits sometimes leads to problems on
64bit platforms. Some system metrics do have different sizing on 32 and
64bit architectures, which can trip up Agent/Beats wrongly interpreting
the given data.

On Windows/Linux it is possible to run 32bit binaries. Now a check will
be run to fail on startup if the architecture does not match the
binaries architecture.

(cherry picked from commit 7253026)
mergify bot pushed a commit that referenced this pull request Apr 21, 2021
Running Beats/Agent build for 32bits sometimes leads to problems on
64bit platforms. Some system metrics do have different sizing on 32 and
64bit architectures, which can trip up Agent/Beats wrongly interpreting
the given data.

On Windows/Linux it is possible to run 32bit binaries. Now a check will
be run to fail on startup if the architecture does not match the
binaries architecture.

(cherry picked from commit 7253026)
v1v added a commit to v1v/beats that referenced this pull request Apr 21, 2021
…-github-pr-comment-template

* upstream/master:
  Check native environment before starting (elastic#25186)
  Change event.code and winlog.event_id type (elastic#25176)
  [Ingest Manager] Proxy processes/elastic-agent to stats (elastic#25193)
  Update mergify backporting to 7.x and 7.13 (elastic#25196)
  [Heartbeat]: ensure synthetics version co* [Heartbeat]: ensure synthetics version compatability for suites  * address review and fix notice  * fix lowercase struct  * fix version conflict and rebase  * update go.* stuff to master  * fix notice.txt  * move validate inside sourcempatability for suites (elastic#24777)
  [Filebeat] Ensure Kibana audit `event.category` and `event.type` are still processed as strings. (elastic#25101)
  Update replace.asciidoc (elastic#25055)
  Fix nil panic when overwriting metadata (elastic#24741)
  [Filebeat] Add Malware Bazaar to Threat Intel Module (elastic#24570)
  Fix k8s svc selectors mapping (elastic#25169)
  [Ingest Manager] Make agent retry values for bootstraping configurable (elastic#25163)
  [Metricbeat] Remove elasticsearc.index.created from the SM code (elastic#25113)
v1v added a commit to v1v/beats that referenced this pull request Apr 22, 2021
…ng-versions-stack

* upstream/master: (28 commits)
  Add support for parsers in filestream input (elastic#24763)
  Skip flaky test TestFilestreamTruncate (elastic#25218)
  backport: Add 7.13 branch (elastic#25189)
  Update decode_json_fields.asciidoc (elastic#25056)
  [Elastic Agent] Fix status and inspect command to work inside running container (elastic#25204)
  Check native environment before starting (elastic#25186)
  Change event.code and winlog.event_id type (elastic#25176)
  [Ingest Manager] Proxy processes/elastic-agent to stats (elastic#25193)
  Update mergify backporting to 7.x and 7.13 (elastic#25196)
  [Heartbeat]: ensure synthetics version co* [Heartbeat]: ensure synthetics version compatability for suites  * address review and fix notice  * fix lowercase struct  * fix version conflict and rebase  * update go.* stuff to master  * fix notice.txt  * move validate inside sourcempatability for suites (elastic#24777)
  [Filebeat] Ensure Kibana audit `event.category` and `event.type` are still processed as strings. (elastic#25101)
  Update replace.asciidoc (elastic#25055)
  Fix nil panic when overwriting metadata (elastic#24741)
  [Filebeat] Add Malware Bazaar to Threat Intel Module (elastic#24570)
  Fix k8s svc selectors mapping (elastic#25169)
  [Ingest Manager] Make agent retry values for bootstraping configurable (elastic#25163)
  [Metricbeat] Remove elasticsearc.index.created from the SM code (elastic#25113)
  [Ingest Manager] Keep http and logging config during enroll (elastic#25132)
  Refactor kubernetes autodiscover to avoid skipping short-living pods (elastic#24742)
  [libbeat] New decode xml wineventlog processor (elastic#25115)
  ...
urso pushed a commit that referenced this pull request Apr 24, 2021
Co-authored-by: Steffen Siering <[email protected]>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
urso pushed a commit that referenced this pull request Apr 25, 2021
Co-authored-by: Steffen Siering <[email protected]>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-v7.13.0 Automated backport with mergify backport-v7.14.0 Automated backport with mergify review Team:Elastic-Agent Label for the Agent team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

bit-depth check in Agent / Beats to prevent x86 artifact from running on x64 env
3 participants