====== Filebeat ======
Filebeat dient zur Weiterleitung der von Syslog aufgenommenen Logs an z.B. Logstash.
Es prüft ein oder mehrere Quellen auf Änderungen und leitet diese dann weiter.
Filebeat kommuniziert über den Port 5044 mit Logstash.
===== Installation =====
Einfach das deb-Paket von [[https://www.elastic.co/downloads/beats/filebeat|elastic.co]] herunterladen und installieren
dpkg -i filebeat-6.2.1-amd64.deb
Unter ''/usr/share/filebeat/'' liegen die installierten Dateien.
Nun kann man bereits das Template exportieren und hochladen. Da aber in der Konfiguration noch Einstellungen für das Template gemacht werden, sollte man das Template nach einer **fertigen Konfiguration** in Elasticsearch uploaden oder manuel exportieren und danach auch uploaden
**Upload**
filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=[":9200"]'
oder **manueller Export**
Export: filebeat export template > filebeat-.template.json
Upload: curl -XPUT -u -k -H 'Content-Type: application/json' https://:9200/_template/filebeat- -d@filebeat-.template.json
===== Konfigurieren =====
Die Konfigurationsdateien liegen unter ''/etc/filebeat/''.
Die Datei ''filebeat.yml'' ist die Hauptkonfigurationsdatei.
Hier eine initiale Konfiguration zur Kommunikation mit dem Elasticstack.
#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: false
# Period on which files under path should be checked for changes
#reload.period: 10s
#==================== Elasticsearch template setting ==========================
setup.template.settings:
index.number_of_shards: 3
setup.kibana:
host: ":5601"
## Logstashstuff
output.logstash:
# The Logstash hosts
hosts: [":5044"]
## Loggingstuff
logging.level: warning
logging.to_files: true
logging.to_syslog: false
logging.files:
path: /var/log/filebeat
name: filebeat-logstash.log
keepfiles: 7
permissions: 0644
## Inputs
filebeat.inputs:
- type: log
#enabled: false
paths:
- /var/log/syslogs/usv*.log
fields:
device: usv
- type: log
#enabled: false
paths:
- /var/log/syslogs/hpprocurve*.log
fields:
device: hpswitch
==== Konfiguration testen ====
filebeat test [config|output] --path.config /etc/filebeat/ [--help]
==== Debugging ====
Um auf der Konsole zu sehen was gerade bei Filebeat passiert, folgendes ausführen:
systemctl stop filebeat.service
filebeat -e -d "publish"
ODER
filebeat -e -d "processors,logstash"
===== Daten erneut senden =====
- filebeat beenden
- ''rm -r /var/lib/filebeat/registry''
- Daten in den Log-Dateien erneut bereitstellen (entweder aktuelle Log-Dateien mit alten überschreiben oder alte Log-Dateien mit anderem Dateinamen in ''filebeat.yml'' angeben)
- filebeat starten