I am running Elasticsearch/Kibana 7.14. on Ubuntu 22.04 on the backend of an Apache reverse proxy. Filebeat is on another Ubuntu 22.04 on the backend of the same reverse proxy. Other beats are on the Filebeat's machine. They are behaving similarly but Filebeat seems to be crashing with SIGABRT, pthread_create failed, etc.
I did create a service drop-in configuration directory to "fix" the errors "timeout was exceeded". I've gone through "filebeat.yml" and "filebeat test config" returns OK. I am not able to properly interpret filebeat.log, filebeat -e -v or journal -e -u filebeat.
I would like your assistance to get filebeat running and stabilized first. Then us that experience to get the other beats up, running and stable. Finally, I'll get updated to 7.17 then 8.5.
1. Here is filebeat.yml and other pertinent information:
########### Filebeat Configuration Example #########################
# This file is an example configuration file highlighting only the most common
# options. The filebeat.reference.yml file from the same directory contains all the
# supported options with more comments. You can use it as a reference.
#
# You can find the full configuration reference here:
# https://www.elastic.co/guide/en/beats/filebeat/index.html
# For more available modules and options, please see the filebeat.reference.yml sample
# configuration file.
# ==================== Filebeat inputs ===============================
filebeat.inputs:
# Each - is an input. Most options can be set at the input level, so
# you can use different inputs for various configurations.
# Below are the input specific configurations.
- type: log
# Change to true to enable this input configuration.
#enabled: false
enabled: true
# Paths that should be crawled and fetched. Glob based paths.
paths:
#- /var/log/*.log
- /var/log/*/*.log
#- c:\programdata\elasticsearch\logs\*
# Exclude lines. A list of regular expressions to match. It drops the lines that are
# matching any regular expression from the list.
#exclude_lines: ['^DBG']
# Include lines. A list of regular expressions to match. It exports the lines that are
# matching any regular expression from the list.
#include_lines: ['^ERR', '^WARN']
# Exclude files. A list of regular expressions to match. Filebeat drops the files that
# are matching any regular expression from the list. By default, no files are dropped.
#exclude_files: ['.gz$']
# Optional additional fields. These fields can be freely picked
# to add additional information to the crawled log files for filtering
#fields:
# level: debug
# review: 1
### Multiline options
# Multiline can be used for log messages spanning multiple lines. This is common
# for Java Stack Traces or C-Line Continuation
# The regexp Pattern that has to be matched. The example pattern matches all lines starting with [
#multiline.pattern: ^\[
# Defines if the pattern set under pattern should be negated or not. Default is false.
#multiline.negate: false
# Match can be set to "after" or "before". It is used to define if lines should be append to a pattern
# that was (not) matched before or after or as long as a pattern is not matched based on negate.
# Note: After is the equivalent to previous and before is the equivalent to to next in Logstash
#multiline.match: after
# =================== Filebeat modules ==============================
filebeat.config.modules:
# Glob pattern for configuration loading
path: ${path.config}/modules.d/*.yml
# Set to true to enable config reloading
reload.enabled: true
# Period on which files under path should be checked for changes
#reload.period: 10s
# ============== Elasticsearch template setting =======================
setup.template.settings:
index.number_of_shards: 1
#index.codec: best_compression
#_source.enabled: false
# =================== General ===================================
# The name of the shipper that publishes the network data. It can be used to group
# all the transactions sent by a single shipper in the web interface.
#name:
# The tags of the shipper are included in their own field with each
# transaction published.
#tags: ["service-X", "web-tier"]
# Optional fields that you can specify to add additional information to the
# output.
#fields:
# env: staging
# ============== Dashboards =================================
# These settings control loading the sample dashboards to the Kibana index. Loading
# the dashboards is disabled by default and can be enabled either by setting the
# options here or by using the `setup` command.
#setup.dashboards.enabled: false
# The URL from where to download the dashboards archive. By default this URL
# has a value which is computed based on the Beat name and version. For released
# versions, this URL points to the dashboard archive on the artifacts.elastic.co
# website.
#setup.dashboards.url:
# =================== Kibana ===================================
# Starting with Beats version 6.0.0, the dashboards are loaded via the Kibana API.
# This requires a Kibana endpoint configuration.
setup.kibana:
# Kibana Host
# Scheme and port can be left out and will be set to the default (http and 5601)
# In case you specify and additional path, the scheme is required: http://localhost:5601/path
# IPv6 addresses should always be defined as: https://[2001:db8::1]:5601
host: "http://10.0.0.47:5601"
# Kibana Space ID
# ID of the Kibana Space into which the dashboards should be loaded. By default,
# the Default Space will be used.
#space.id:
# ================== Elastic Cloud ================================
# These settings simplify using Filebeat with the Elastic Cloud (https://cloud.elastic.co/).
# The cloud.id setting overwrites the `output.elasticsearch.hosts` and
# `setup.kibana.host` options.
# You can find the `cloud.id` in the Elastic Cloud web UI.
#cloud.id:
# The cloud.auth setting overwrites the `output.elasticsearch.username` and
# `output.elasticsearch.password` settings. The format is `<user>:<pass>`.
#cloud.auth:
# ================== Outputs ===================================
# Configure what output to use when sending the data collected by the beat.
# ---------------------------- Elasticsearch Output ----------------------------
output.elasticsearch:
# Array of hosts to connect to.
#hosts: ["localhost:9200"]
hosts: ["10.0.0.47:9200"]
pipeline: "geoip-info"
# Protocol - either `http` (default) or `https`.
protocol: "http"
# Authentication credentials - either API key or username/password.
#api_key: "id:api_key"
username: "********"(redacted)
password: "**************" (redacted)
# ------------------------------ Logstash Output -------------------------------
#output.logstash:
# The Logstash hosts
#hosts: ["10.0.0.47:5044"]
# Optional SSL. By default is off.
# List of root certificates for HTTPS server verifications
#ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
# Certificate for SSL client authentication
#ssl.certificate: "/etc/pki/client/cert.pem"
# Client Certificate Key
#ssl.key: "/etc/pki/client/cert.key"
# ==================== Processors =================================
# Configure processors to enhance or manipulate events generated by the beat.
processors:
- add_host_metadata: ~
#- add_cloud_metadata: ~
#- add_docker_metadata: ~
#- add_kubernetes_metadata: ~
# ===================== Logging ===================================
# Sets log level. The default log level is info.
# Available log levels are: error, warning, info, debug
logging.level: debug
logging.to_files: true
logging.files:
path: /var/log/filebeat
name: filebeat.log
keepfiles: 3
permissions: 0644
# At debug level, you can selectively enable logging only for some components.
# To enable all selectors use ["*"]. Examples of other selectors are "beat",
# "publish", "service".
#logging.selectors: ["*"]
# ================= X-Pack Monitoring ==============================
# Filebeat can export internal metrics to a central Elasticsearch monitoring
# cluster. This requires xpack monitoring to be enabled in Elasticsearch. The
# reporting is disabled by default.
# Set to true to enable the monitoring reporter.
#monitoring.enabled: false
# Sets the UUID of the Elasticsearch cluster under which monitoring data for this
# Filebeat instance will appear in the Stack Monitoring UI. If output.elasticsearch
# is enabled, the UUID is derived from the Elasticsearch cluster referenced by output.elasticsearch.
#monitoring.cluster_uuid:
# Uncomment to send the metrics to Elasticsearch. Most settings from the
# Elasticsearch output are accepted here as well.
# Note that the settings should point to your Elasticsearch *monitoring* cluster.
# Any setting that is not set is automatically inherited from the Elasticsearch
# output configuration, so if you have the Elasticsearch output configured such
# that it is pointing to your Elasticsearch monitoring cluster, you can simply
# uncomment the following line.
#monitoring.elasticsearch:
# ===================== Migration ==================================
# This allows to enable 6.7 migration aliases
#migration.6_to_7.enabled: true
2. /etc/systemd/system/filebeat.service.d/startup-timeout.conf
[Service]
Restart=always
RestartSec=4s
3. systemctl status filebeat. The Active is momentarily
â—Ź filebeat.service - Filebeat sends log files to Logstash or directly to Elasticsearch.
Loaded: loaded (/lib/systemd/system/filebeat.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/filebeat.service.d
└─startup-timeout.conf
Active: active (running) since Fri 2022-12-30 14:01:21 EST; 172ms ago
Docs: https://www.elastic.co/beats/filebeat
Main PID: 280411 (filebeat)
Tasks: 1 (limit: 9329)
Memory: 9.9M
CPU: 27ms
CGroup: /system.slice/filebeat.service
└─280411 /usr/share/filebeat/bin/filebeat --environment systemd -c /etc/filebeat/filebeat.yml --path.home /usr/share/filebeat --path.config /etc/filebeat --path.data>
Dec 30 14:01:21 caleb systemd[1]: Started Filebeat sends log files to Logstash or directly to Elasticsearch..
root@caleb:/home/tobias# systemctl status filebeat
â—Ź filebeat.service - Filebeat sends log files to Logstash or directly to Elasticsearch.
Loaded: loaded (/lib/systemd/system/filebeat.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/filebeat.service.d
└─startup-timeout.conf
Active: activating (auto-restart) (Result: exit-code) since Fri 2022-12-30 14:01:27 EST; 3s ago
Docs: https://www.elastic.co/beats/filebeat
Process: 280420 ExecStart=/usr/share/filebeat/bin/filebeat --environment systemd $BEAT_LOG_OPTS $BEAT_CONFIG_OPTS $BEAT_PATH_OPTS (code=exited, status=1/FAILURE)
Main PID: 280420 (code=exited, status=1/FAILURE)
CPU: 325ms
Dec 30 14:01:27 caleb systemd[1]: filebeat.service: Main process exited, code=exited, status=1/FAILURE
Dec 30 14:01:27 caleb systemd[1]: filebeat.service: Failed with result 'exit-code'.
root@caleb:/home/tobias#
4. journalctl -e -u filebeat NOTE code=exited, status=2/INVALIDARGUMENT
root@caleb:/home/tobias# journalctl -e -u filebeat
Dec 30 14:13:51 caleb filebeat[282479]: goroutine 41 [select]:
Dec 30 14:13:51 caleb filebeat[282479]: github.com/elastic/beats/v7/libbeat/publisher/pipeline.(*retryer).loop(0xc000565a40)
Dec 30 14:13:51 caleb systemd[1]: filebeat.service: Main process exited, code=exited, status=**2/INVALIDARGUMENT**
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/publisher/pipeline/retry.go:135 +0x237
Dec 30 14:13:51 caleb filebeat[282479]: created by github.com/elastic/beats/v7/libbeat/publisher/pipeline.newRetryer
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/publisher/pipeline/retry.go:94 +0x15d
Dec 30 14:13:51 caleb filebeat[282479]: goroutine 42 [select]:
Dec 30 14:13:51 caleb filebeat[282479]: github.com/elastic/beats/v7/libbeat/publisher/pipeline.(*netClientWorker).run(0xc000565d40)
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/publisher/pipeline/output.go:127 +0xb1
Dec 30 14:13:51 caleb filebeat[282479]: created by github.com/elastic/beats/v7/libbeat/publisher/pipeline.makeClientWorker
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/publisher/pipeline/output.go:79 +0x196
Dec 30 14:13:51 caleb filebeat[282479]: goroutine 43 [select]:
Dec 30 14:13:51 caleb filebeat[282479]: github.com/elastic/beats/v7/libbeat/monitoring/report/log.(*reporter).snapshotLoop(0xc000b2c0c0)
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/monitoring/report/log/log.go:129 +0x3b8
Dec 30 14:13:51 caleb filebeat[282479]: github.com/elastic/beats/v7/libbeat/monitoring/report/log.MakeReporter.func1(0xc000b2c0c0)
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/monitoring/report/log/log.go:107 +0x52
Dec 30 14:13:51 caleb filebeat[282479]: created by github.com/elastic/beats/v7/libbeat/monitoring/report/log.MakeReporter
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/monitoring/report/log/log.go:105 +0x15f
Dec 30 14:13:51 caleb filebeat[282479]: goroutine 45 [syscall]:
Dec 30 14:13:51 caleb filebeat[282479]: os/signal.signal_recv(0x0)
Dec 30 14:13:51 caleb filebeat[282479]: /usr/local/go/src/runtime/sigqueue.go:168 +0xa5
Dec 30 14:13:51 caleb filebeat[282479]: os/signal.loop()
Dec 30 14:13:51 caleb filebeat[282479]: /usr/local/go/src/os/signal/signal_unix.go:23 +0x25
Dec 30 14:13:51 caleb filebeat[282479]: created by os/signal.Notify.func1.1
Dec 30 14:13:51 caleb filebeat[282479]: /usr/local/go/src/os/signal/signal.go:151 +0x46
Dec 30 14:13:51 caleb filebeat[282479]: goroutine 46 [runnable]:
Dec 30 14:13:51 caleb filebeat[282479]: github.com/elastic/beats/v7/libbeat/service.HandleSignals.func1(0xc000090660, 0xc00038acc0, 0xc00038acb0, 0xc000452200, 0xc0009e8980)
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/service/service.go:49
Dec 30 14:13:51 caleb filebeat[282479]: created by github.com/elastic/beats/v7/libbeat/service.HandleSignals
Dec 30 14:13:51 caleb filebeat[282479]: /go/src/github.com/elastic/beats/libbeat/service/service.go:49 +0x178
Dec 30 14:13:51 caleb filebeat[282479]: rax 0x0
Dec 30 14:13:51 caleb filebeat[282479]: rbx 0x7f54c5659640
Dec 30 14:13:51 caleb filebeat[282479]: rcx 0x7f54edb87a7c
Dec 30 14:13:51 caleb filebeat[282479]: rdx 0x6
Dec 30 14:13:51 caleb filebeat[282479]: rdi 0x44f6f
Dec 30 14:13:51 caleb filebeat[282479]: rsi 0x44f77
Dec 30 14:13:51 caleb filebeat[282479]: rbp 0x44f77
Dec 30 14:13:51 caleb filebeat[282479]: rsp 0x7f54c56588b0
Dec 30 14:13:51 caleb filebeat[282479]: r8 0x7f54c5658980
Dec 30 14:13:51 caleb filebeat[282479]: r9 0x7fffffff
Dec 30 14:13:51 caleb filebeat[282479]: r10 0x8
Dec 30 14:13:51 caleb filebeat[282479]: r11 0x246
Dec 30 14:13:51 caleb filebeat[282479]: r12 0x6
Dec 30 14:13:51 caleb filebeat[282479]: r13 0x16
Dec 30 14:13:51 caleb filebeat[282479]: r14 0x7f54edb85850
Dec 30 14:13:51 caleb filebeat[282479]: r15 0x7ffc720b2c10
Dec 30 14:13:51 caleb filebeat[282479]: rip 0x7f54edb87a7c
Dec 30 14:13:51 caleb systemd[1]: filebeat.service: Failed with result 'exit-code'.
Dec 30 14:13:51 caleb filebeat[282479]: rflags 0x246
Dec 30 14:13:51 caleb filebeat[282479]: cs 0x33
Dec 30 14:13:51 caleb filebeat[282479]: fs 0x0
Dec 30 14:13:51 caleb filebeat[282479]: gs 0x0
5. root@caleb:/home/tobias# cat /var/log/filebeat/filebeat.log
2022-12-30T14:24:58.224-0500 INFO instance/beat.go:665 Home path: [/usr/share/filebeat] Config path: [/etc/filebeat] Data path: [/var/lib/filebeat] Logs path: [/var/log/filebeat]
2022-12-30T14:24:58.224-0500 DEBUG [beat] instance/beat.go:723 Beat metadata path: /var/lib/filebeat/meta.json
2022-12-30T14:24:58.225-0500 INFO instance/beat.go:673 Beat ID: 4c2fcbf3-5b9c-4b58-87e7-c1ff19a45acd
2022-12-30T14:24:58.226-0500 DEBUG [processors] processors/processor.go:120 Generated new processors: add_host_metadata=[netinfo.enabled=[true], cache.ttl=[5m0s]]
2022-12-30T14:24:58.226-0500 DEBUG [seccomp] seccomp/seccomp.go:117 Loading syscall filter {"seccomp_filter": {"no_new_privs":true,"flag":"tsync","policy":{"default_action":"errno","syscalls":[{"names":["accept","accept4","access","arch_prctl","bind","brk","chmod","chown","clock_gettime","clone","close","connect","dup","dup2","epoll_create","epoll_create1","epoll_ctl","epoll_pwait","epoll_wait","exit","exit_group","fchdir","fchmod","fchmodat","fchown","fchownat","fcntl","fdatasync","flock","fstat","fstatfs","fsync","ftruncate","futex","getcwd","getdents","getdents64","geteuid","getgid","getpeername","getpid","getppid","getrandom","getrlimit","getrusage","getsockname","getsockopt","gettid","gettimeofday","getuid","inotify_add_watch","inotify_init1","inotify_rm_watch","ioctl","kill","listen","lseek","lstat","madvise","mincore","mkdirat","mmap","mprotect","munmap","nanosleep","newfstatat","open","openat","pipe","pipe2","poll","ppoll","pread64","pselect6","pwrite64","read","readlink","readlinkat","recvfrom","recvmmsg","recvmsg","rename","renameat","rt_sigaction","rt_sigprocmask","rt_sigreturn","sched_getaffinity","sched_yield","sendfile","sendmmsg","sendmsg","sendto","set_robust_list","setitimer","setsockopt","shutdown","sigaltstack","socket","splice","stat","statfs","sysinfo","tgkill","time","tkill","uname","unlink","unlinkat","wait4","waitid","write","writev"],"action":"allow"}]}}}
2022-12-30T14:24:58.227-0500 INFO [seccomp] seccomp/seccomp.go:124 Syscall filter successfully installed
2022-12-30T14:24:58.227-0500 INFO [beat] instance/beat.go:1014 Beat info {"system_info": {"beat": {"path": {"config": "/etc/filebeat", "data": "/var/lib/filebeat", "home": "/usr/share/filebeat", "logs": "/var/log/filebeat"}, "type": "filebeat", "uuid": "4c2fcbf3-5b9c-4b58-87e7-c1ff19a45acd"}}}
2022-12-30T14:24:58.227-0500 INFO [beat] instance/beat.go:1023 Build info {"system_info": {"build": {"commit": "e127fc31fc6c00fdf8649808f9421d8f8c28b5db", "libbeat": "7.14.0", "time": "2021-07-29T20:56:59.000Z", "version": "7.14.0"}}}
2022-12-30T14:24:58.227-0500 INFO [beat] instance/beat.go:1026 Go runtime info {"system_info": {"go": {"os":"linux","arch":"amd64","max_procs":1,"version":"go1.16.6"}}}
2022-12-30T14:24:58.228-0500 INFO [beat] instance/beat.go:1030 Host info {"system_info": {"host": {"architecture":"x86_64","boot_time":"2022-12-29T15:51:52-05:00","containerized":false,"name":"caleb","ip":["127.0.0.1/8","10.0.0.122/24"],"kernel_version":"5.15.0-56-generic","mac":["00:1d:09:24:f5:9b"],"os":{"type":"linux","family":"debian","platform":"ubuntu","name":"Ubuntu","version":"22.04.1 LTS (Jammy Jellyfish)","major":22,"minor":4,"patch":1,"codename":"jammy"},"timezone":"EST","timezone_offset_sec":-18000,"id":"2cc07e6a1163261fb8993e5f5f125907"}}}
2022-12-30T14:24:58.229-0500 INFO [beat] instance/beat.go:1059 Process info {"system_info": {"process": {"capabilities": {"inheritable":null,"permitted":["chown","dac_override","dac_read_search","fowner","fsetid","kill","setgid","setuid","setpcap","linux_immutable","net_bind_service","net_broadcast","net_admin","net_raw","ipc_lock","ipc_owner","sys_module","sys_rawio","sys_chroot","sys_ptrace","sys_pacct","sys_admin","sys_boot","sys_nice","sys_resource","sys_time","sys_tty_config","mknod","lease","audit_write","audit_control","setfcap","mac_override","mac_admin","syslog","wake_alarm","block_suspend","audit_read","38","39","40"],"effective":["chown","dac_override","dac_read_search","fowner","fsetid","kill","setgid","setuid","setpcap","linux_immutable","net_bind_service","net_broadcast","net_admin","net_raw","ipc_lock","ipc_owner","sys_module","sys_rawio","sys_chroot","sys_ptrace","sys_pacct","sys_admin","sys_boot","sys_nice","sys_resource","sys_time","sys_tty_config","mknod","lease","audit_write","audit_control","setfcap","mac_override","mac_admin","syslog","wake_alarm","block_suspend","audit_read","38","39","40"],"bounding":["chown","dac_override","dac_read_search","fowner","fsetid","kill","setgid","setuid","setpcap","linux_immutable","net_bind_service","net_broadcast","net_admin","net_raw","ipc_lock","ipc_owner","sys_module","sys_rawio","sys_chroot","sys_ptrace","sys_pacct","sys_admin","sys_boot","sys_nice","sys_resource","sys_time","sys_tty_config","mknod","lease","audit_write","audit_control","setfcap","mac_override","mac_admin","syslog","wake_alarm","block_suspend","audit_read","38","39","40"],"ambient":null}, "cwd": "/", "exe": "/usr/share/filebeat/bin/filebeat", "name": "filebeat", "pid": 284229, "ppid": 1, "seccomp": {"mode":"filter","no_new_privs":true}, "start_time": "2022-12-30T14:24:56.900-0500"}}}
2022-12-30T14:24:58.229-0500 INFO instance/beat.go:309 Setup Beat: filebeat; Version: 7.14.0
2022-12-30T14:24:58.229-0500 DEBUG [beat] instance/beat.go:335 Initializing output plugins
2022-12-30T14:24:58.229-0500 INFO [index-management] idxmgmt/std.go:184 Set output.elasticsearch.index to 'filebeat-7.14.0' as ILM is enabled.
2022-12-30T14:24:58.230-0500 INFO [esclientleg] eslegclient/connection.go:100 elasticsearch url: http://10.0.0.47:9200
2022-12-30T14:24:58.230-0500 DEBUG [publisher] pipeline/consumer.go:148 start pipeline event consumer
2022-12-30T14:24:58.231-0500 INFO [publisher] pipeline/module.go:113 Beat name: caleb
2022-12-30T14:24:58.232-0500 INFO [monitoring] log/log.go:118 Starting metrics logging every 30s
2022-12-30T14:24:58.232-0500 INFO instance/beat.go:473 filebeat start running.
2022-12-30T14:24:58.232-0500 DEBUG [test] registrar/migrate.go:304 isFile(/var/lib/filebeat/registry) -> false
2022-12-30T14:24:58.232-0500 DEBUG [test] registrar/migrate.go:304 isFile() -> false
2022-12-30T14:24:58.232-0500 DEBUG [test] registrar/migrate.go:297 isDir(/var/lib/filebeat/registry/filebeat) -> true
2022-12-30T14:24:58.232-0500 DEBUG [test] registrar/migrate.go:304 isFile(/var/lib/filebeat/registry/filebeat/meta.json) -> true
2022-12-30T14:24:58.232-0500 DEBUG [registrar] registrar/migrate.go:84 Registry type '1' found
2022-12-30T14:24:58.234-0500 INFO memlog/store.go:119 Loading data file of '/var/lib/filebeat/registry/filebeat' succeeded. Active transaction id=1379971
root@caleb:/home/tobias#
Thanks in advance for any assistance and insight. I am happy to provide any additional information needed.