-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[Filebeat] Enable journald input in releases #27351
[Filebeat] Enable journald input in releases #27351
Conversation
💚 Build Succeeded
Expand to view the summary
Build stats
Test stats 🧪
Trends 🧪💚 Flaky test reportTests succeeded. Expand to view the summary
Test stats 🧪
|
13f7302
to
eb56fa6
Compare
490d3af
to
ff25d00
Compare
Pinging @elastic/security-external-integrations (Team:Security-External Integrations) |
Pinging @elastic/agent (Team:Agent) |
76d76d2
to
5d52027
Compare
Use the main-debian8 variant of golang-crossbuilder to build Filebeat packages for linux/amd64 and linux/368. Previously a debian7 image was used, but debian7 does not have the systemd libraries needed for journald. Debian 8 uses glibc 2.19 and debian 7 uses 2.13. We used debian7 because the binaries produced worked on RHEL 6 which has glibc 2.12. To ensure that the Filebeat binaries for linux/amd64 and linux/386 continue to work on RHEL 6 the build process will check the glibc requirement to ensure it is <=2.12. To keep the linked glibc version compatible with RHEL 6 I had to upgrade to github.com/dgraph-io/badger/v3 from v2. v3 removed a bunch of cgo usages which reduced the need on various libc functions. badger adopted golang/glog for logging. This library is adds global CLI flags that conflict with Beats own logging CLI flags (like '-v'). This is a common problem for glog (k8s encountered this). To address the problem I forked golang/glog and made the flag.FlagSet used by the library configurable.
5d52027
to
e0702a1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM just a couple of questions that I'm not sure of
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please move the fork of glog
to elastic org.
The fork has been moved to github.com/elastic/glog. |
Use the main-debian8 variant of golang-crossbuilder to build Filebeat packages for linux/amd64 and linux/368. Previously a debian7 image was used, but debian7 does not have the systemd libraries needed for journald. Debian 8 uses glibc 2.19 and debian 7 uses 2.13. We used debian7 because the binaries produced worked on RHEL 6 which has glibc 2.12. To ensure that the Filebeat binaries for linux/amd64 and linux/386 continue to work on RHEL 6 the build process will check the glibc requirement to ensure it is <=2.12. To keep the linked glibc version compatible with RHEL 6 I had to upgrade to github.com/dgraph-io/badger/v3 from v2. v3 removed a bunch of cgo usages which reduced the need on various libc functions. badger adopted golang/glog for logging. This library is adds global CLI flags that conflict with Beats own logging CLI flags (like '-v'). This is a common problem for glog (k8s encountered this). To address the problem I forked golang/glog and made the flag.FlagSet used by the library configurable.
Use the main-debian8 variant of golang-crossbuilder to build Filebeat packages for linux/amd64 and linux/368. Previously a debian7 image was used, but debian7 does not have the systemd libraries needed for journald. Debian 8 uses glibc 2.19 and debian 7 uses 2.13. We used debian7 because the binaries produced worked on RHEL 6 which has glibc 2.12. To ensure that the Filebeat binaries for linux/amd64 and linux/386 continue to work on RHEL 6 the build process will check the glibc requirement to ensure it is <=2.12. To keep the linked glibc version compatible with RHEL 6 I had to upgrade to github.com/dgraph-io/badger/v3 from v2. v3 removed a bunch of cgo usages which reduced the need on various libc functions. badger adopted golang/glog for logging. This library is adds global CLI flags that conflict with Beats own logging CLI flags (like '-v'). This is a common problem for glog (k8s encountered this). To address the problem I forked golang/glog and made the flag.FlagSet used by the library configurable.
Use the main-debian8 variant of golang-crossbuilder to build Filebeat packages for linux/amd64 and linux/368. Previously a debian7 image was used, but debian7 does not have the systemd libraries needed for journald. Debian 8 uses glibc 2.19 and debian 7 uses 2.13. We used debian7 because the binaries produced worked on RHEL 6 which has glibc 2.12. To ensure that the Filebeat binaries for linux/amd64 and linux/386 continue to work on RHEL 6 the build process will check the glibc requirement to ensure it is <=2.12. To keep the linked glibc version compatible with RHEL 6 I had to upgrade to github.com/dgraph-io/badger/v3 from v2. v3 removed a bunch of cgo usages which reduced the need on various libc functions. badger adopted golang/glog for logging. This library is adds global CLI flags that conflict with Beats own logging CLI flags (like '-v'). This is a common problem for glog (k8s encountered this). To address the problem I forked golang/glog and made the flag.FlagSet used by the library configurable. Co-authored-by: Andrew Kroh <andrew.kroh@elastic.co>
Use the main-debian8 variant of golang-crossbuilder to build Filebeat packages for linux/amd64 and linux/368. Previously a debian7 image was used, but debian7 does not have the systemd libraries needed for journald. Debian 8 uses glibc 2.19 and debian 7 uses 2.13. We used debian7 because the binaries produced worked on RHEL 6 which has glibc 2.12. To ensure that the Filebeat binaries for linux/amd64 and linux/386 continue to work on RHEL 6 the build process will check the glibc requirement to ensure it is <=2.12. To keep the linked glibc version compatible with RHEL 6 I had to upgrade to github.com/dgraph-io/badger/v3 from v2. v3 removed a bunch of cgo usages which reduced the need on various libc functions. badger adopted golang/glog for logging. This library is adds global CLI flags that conflict with Beats own logging CLI flags (like '-v'). This is a common problem for glog (k8s encountered this). To address the problem I forked golang/glog and made the flag.FlagSet used by the library configurable.
What does this PR do?
Enables reading journald from Filebeat.
Use the
main-debian8
variant of golang-crossbuild to build Filebeatpackages for linux/amd64 and linux/368. Previously a debian7 image was
used, but debian7 does not have the systemd libraries needed for journald.
Debian 8 uses glibc 2.19 and debian 7 uses 2.13. We used debian7 because
the binaries produced worked on RHEL 6 which has glibc 2.12.
To ensure that the Filebeat binaries for linux/amd64 and linux/386 continue
to work on RHEL 6 the build process will check the glibc requirement to
ensure it is <=2.12.
To keep the linked glibc version compatible with RHEL 6 I had to upgrade to
github.com/dgraph-io/badger/v3 from v2. v3 removed a bunch of cgo usages which
reduced the need on various libc functions.
badger adopted golang/glog for logging. This library is adds global CLI
flags that conflict with Beats own logging CLI flags (like '-v'). This is
a common problem for glog (k8s encountered this). To address the problem
I forked golang/glog and made the flag.FlagSet used by the library configurable.
Why is it important?
Users can collect all their logs with Filebeat and do not need a separate Journalbeat.
Checklist
- [ ] I have made corresponding change to the default configuration files- [ ] I have added tests that prove my fix is effective or that my feature worksCHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.Follow up tasks
Related issues
Logs
>> testBinaryGLIBCVersion: "build/golang-crossbuild/filebeat-linux-amd64" requires glibc 2.3.2 or greater