Я использую logstash для отправки данных системного журнала в elasticsearch. Все работает нормально, за исключением того, что агент logstash отправляет данные с отметкой времени +5 часов.
Вот мой конфиг:
input {
file {
type => "syslog"
# modify to path to suit your local syslog configuration.
# The below will recursively grab all files in /var/log/rsyslog that end in .log
path => ["/var/log/syslog", '/var/log/auth.log', '/var/log/faillog', '/var/log/mail.log', '/var/log/postgresql/postgresql-9.1-main.log']
# comment out below after logstash has slurped in all of your existing logs otherwise
# you risk it double indexing if you lose your sincedb file.
#start_position => "beginning"
}
file {
type => "jbosslog"
path => [ "/data/jboss-4.2.3.GA/server/bla/log/server.log" ]
}
}
output {
redis {
# change below to the hostname or ip address of your redis server. can add more than one redis host.
host => [ "192.168.117.39" ]
data_type => 'list'
key => 'logstash'
batch => true
}
stdout { }
}
Стандартный вывод журнала выглядит так:
2013-03-06T17:03:56.934Z file://bla/var/log/postgresql/postgresql-9.1-main.log: 2013-03-06 12:03:56 EST LOG: archive command failed with exit code 12
Отметка времени, которую вы указали в своем примере, кажется правильной. Вы задали этот вопрос примерно за 18 минут.
Похоже, что ваш сервер (я полагаю, у вас есть веская причина, но может и нет) настроен с часовым поясом США / Восток или что-то подобное. Но logstash регистрирует все в формате UTC, чтобы предотвратить множество проблем, возникающих при хранении и обработке местного времени.