2016-08-07 2 views
0

Ich möchte den Zeitstempel aus dem Eintrag im folgenden Format (und möglicherweise auch den Programmnamen) extrahieren. Wie würde ich diesen Eintrag in einen richtigen Logstash-Zeitstempel konvertieren? Ich denke, das kann über einen Filter gemacht werden, aber ich habe nur Beispiele, wo Strings extrahiert wurden, aber wie würde ich diesen Eintrag zurück in einen Datum-Zeit-String konvertieren?Wie man einen unixtimestamp in einen richtigen Zeitstempel in logstash konvertiert

[36931.604673] anacron[502]: Job `cron.weekly' terminated 
[36931.541637] anacron[502]: Job `cron.weekly' started 

Antwort

1

Der Datumsfilter kann Unix-Zeitstempel parsen.

Dies wäre der Filter:

date { 
     match => [ "message", "UNIX" ] 
     target => "my_timestamp" 
    } 

Hinweis:

Nachricht wird das grok Feld, das Sie Ihre Zeitstempel analysieren. Der Datumsfilter wird danach kommen.

Getestet habe ich diese nur mit dem Zeitstempel und stdin/stdout gibt:

https://www.elastic.co/guide/en/logstash/current/plugins-filters-date.html

Artur

:

[email protected]:~/dev/logstash$ ./logstash-2.3.2/bin/logstash -f conf2/ 
Settings: Default pipeline workers: 8 
Pipeline main started 
36931.604673 
{ 
     "message" => "36931.604673", 
     "@version" => "1", 
     "@timestamp" => "2016-08-08T12:15:41.538Z", 
      "host" => "pandaadb", 
    "my_timestamp" => "1970-01-01T10:15:31.604Z" 
} 

Sie Ihre Dokumente hier lesen

Verwandte Themen