2017-10-03 1 views
0

Mein Problem

Betrachten Sie die folgende Verzeichnisstruktur:Filebeat: Überwachen Sie zwei Ebenen der Verzeichnishierarchie

/var/log/quodo/campaigns/deployment_29/campaign-32/users.log 
/var/log/quodo/campaigns/deployment_29/campaign-12/ads.log 
/var/log/quodo/campaigns/deployment_55/campaign-77/users.log 
/var/log/quodo/campaigns/deployment_55/campaign-37/ads.log 
... 

Ich mag würde alle Protokolle unter /var/log/quodo/campaigns/<whatever1>/<whatever2> zur Anmeldung Schiff Elasticsearch Filebeat verwenden.

Filebeat does not feature recursive monitoring of a directory:

Um alle Dateien aus einer vordefinierten Verzeichnissen einer Ebene zu holen, kann das folgende Muster verwendet werden: /var/log/*/*.log.

Dies ruft alle .log Dateien aus den Unterordnern /var/log ab. Protokolldateien werden nicht aus dem Ordner /var/log selbst abgerufen. Derzeit ist es nicht möglich, alle Dateien in allen Unterverzeichnissen eines Verzeichnisses rekursiv abzurufen.

Was haben versucht, ich

filebeat.prospectors: 
- input_type: log 
    paths: 
    - /var/log/quodo/campaigns/*/*/* 
    scan_frequency: 1s 
output.elasticsearch: 
    <connection data> 

Meine Frage

Kann ich zwei Ebenen * in der Verzeichnishierarchie in der Filebeat Konfiguration?

Antwort

1

Unten ist mein filebeat Version

$ filebeat.sh --version 
filebeat version 5.6.2 (amd64), libbeat 5.6.2 

Und ich versuchte unter Config

filebeat.prospectors: 

- input_type: log 

    paths: 
    - /var/log/**/**/* 


output.console: 
    pretty: true 

logging.level: debug 

Und es funktioniert gut für mich

{ 
    "@timestamp": "2017-10-07T18:12:17.694Z", 
    "beat": { 
    "hostname": "vagrant", 
    "name": "vagrant", 
    "version": "5.6.2" 
    }, 
    "input_type": "log", 
    "message": "tarun", 
    "offset": 6, 
    "source": "/var/log/test1/test3/test.log", 
    "type": "log" 
} 
+0

Ordentlich. Wird es so bald wie möglich eine Probefahrt geben. –

+0

Werke. Danke vielmals! –