Я не получаю никакой ошибки, но индексы все еще не создаются вasticsearch. Ниже мои файлы конфигурации.
input {
beats {
port => 5044
}
}
filter {
if [log_type] == "apache-apis" {
grok {
match => { "message" => "^%{IP:CLIENT_IP} (?:-|%{USER:IDEN}) (?:-|%{USER:AUTH}) \[%{HTTPDATE:CREATED_ON}\] \"(?:%{WORD:REQUEST_METHOD} (?:/|%{NOTSPACE:REQUEST})(?: HTTP/%{NUMBER:HTTP_VERSION})?|-)\" %{NUMBER:RESPONSE_CODE} (?:-|%{WORD:BYTES}) (?:-|%{WORD:EXECUTION_TIME})"}
add_field => {
"LOG_TYPES" => "api-log"
}
overwrite => [ "message" ]
}
}
if [log_type] == "apache-webs" {
grok {
match => { "message" => "%{HTTPDATE:CREATED_ON}%{NOTSPACE}%{SPACE} (?:-|%{IP:CLIENT_IP})%{SPACE} %{NOTSPACE}(?:-|%{WORD:REQUEST_METHOD}%{SPACE}) (?:-|%{NOTSPACE:REQUEST})(?: HTTP/%{NUMBER:HTTP_VERSION})%{NOTSPACE}(?:-|%{GREEDYDATA:OTHER_INFO}) (?:-|%{NUMBER:RESPONSE_CODE}) (?:-|%{WORD:BYTES}) (?:-|%{WORD:EXECUTION_TIME})"}
add_field => {
"LOG_TYPES" => "web-log"
}
overwrite => [ "message" ]
}
}
if [log_type] == "jboss-apis" {
grok {
match => { "message" => "%{TIME:CREATED_ON}%{SPACE}%{WORD:LEVEL}%{SPACE}\[%{NOTSPACE:URI_CLASS}\]%{SPACE}\(%{NOTSPACE:THREAD}\)(?<MESSAGE_LOG>[^\r\n]+)((\r?\n)(?<MORE-INFO>(.|\r?\n)+))?"}
add_field => {
"LOG_TYPES" => "jboss-api"
}
overwrite => [ "message" ]
}
}
if [log_type] == "jboss-webs" {
grok {
match => { "message" => "(?:%{TIME:CREATED_ON})(?:%{SPACE})(?:%{WORD:LEVEL})%{SPACE}\[%{NOTSPACE}\]%{SPACE}\(%{NOTSPACE:THREAD}\)%{SPACE}(?:%{TIME})(?:%{SPACE})%{SPACE}\[%{NOTSPACE}\]%{SPACE}(?:%{SPACE})%{WORD:LEVEL}%{SPACE}%{JAVACLASS:CLASS} - (?<MESSAGE_LOG>[^\r\n]+)((\r?\n)(?<extra>(.|\r?\n)+))?"}
add_field => {
"LOG_TYPES" => "jboss-web"
}
}
grok {
match => { "message" => "(?:%{TIME:CREATED_ON})(?:%{SPACE})(?:%{WORD:LEVEL})%{SPACE}\[%{NOTSPACE}\]%{SPACE}\(%{NOTSPACE:THREAD}\)%{SPACE}%{NOTSPACE}%{SPACE}%{WORD:PROTOTYPE}%{SPACE}(?:%{NOTSPACE:STATUS})(?:%{SPACE})(?:%{URI:URI_CLASS})"}
add_field => {
"LOG_TYPES" => "jboss-web"
}
}
grok {
match => { "message" => "%{TIME:CREATED_ON}%{SPACE}%{WORD:LEVEL}%{SPACE}\[%{NOTSPACE}\]%{SPACE}\(%{NOTSPACE:THREAD}\)\ (?<MESSAGE_LOG>[^\r\n]+)\n%{SPACE}%{NOTSPACE}%{SPACE}%{JAVACLASS:URI-CLASS}"}
add_field => {
"LOG_TYPES" => "jboss-web"
}
}
}
}
output {
if [log_type] == "apache-apis" or [log_type] == "apache-webs" {
elasticsearch {
hosts => ["localhost:9200"]
manage_template => false
index => "apache-server-logs"
}
}
if [log_type] == "jboss-apis" or [log_type] == "jboss-webs" {
elasticsearch {
hosts => ["localhost:9200"]
manage_template => false
index => "jboss-server-logs"
}
}
stdout { codec => rubydebug }
}
filebeat.yml conf file
filebeat.inputs:
- type: log
enabled: true
paths:
- /home/user/path/originallogs/apache/api/a-api.log
fields:
log_type: apache-apis
fields_under_root: true
- type: log
enabled: true
paths:
- /home/user/path/originallogs/apache/web/a-web.log
fields:
log_type: apache-webs
fields_under_root: true
- type: log
enabled: true
paths:
- /home/user/path/originallogs/jboss/api/jboss-api-log.log
fields:
log_type: jboss-apis
fields_under_root: true
- type: log
enabled: true
paths:
- /home/user/path/originallogs/jboss/web/jboss-web-log.log
fields:
log_type: jboss-webs
fields_under_root: true
#exclude_lines: ['^DBG']
#include_lines: ['^ERR', '^WARN']
В Windows (IIS), чтобы смочь УСТАНОВИТЬ ГЛОБАЛЬНЫЙ time_zone = 'Европа/Хельсинки' (или безотносительно) MySQL time_zone таблицы описания должен быть заполнен сначала.
я загрузил их с этой ссылки https://dev.mysql.com/downloads/timezones.html
После выполнения загруженного SQL-запроса, я смог установить ГЛОБАЛЬНЫЙ time_zone и решить вопрос, который я имел где ВЫБОР ТЕПЕРЬ (); возвращал GMT, а не BST
Это - 10-летний вопрос, но так или иначе вот то, что работало на меня. Я использую MySQL 8.0 с, в спящем режиме 5 и SpringBoot 4.
я попробовал вышеупомянутый принятый ответ, но не работал на меня, что работало на меня, это:
db.url=jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=Europe/Warsaw
В моем случае решение состояло в том, чтобы установить serverTimezone параметр в Расширенных настройках к соответствующему значению (CET для моего часового пояса).
, Поскольку я использую IntelliJ, я использую его модуль Базы данных. При добавлении нового соединения с базой данных и после добавления всех соответствующих параметров на вкладке General, на кнопке "Test Connection" была ошибка. Снова, решение состоит в том, чтобы установить serverTimezone параметр на вкладке Advanced.
Чтобы установить его для текущего сеанса, выполните:
SET time_zone = timezonename;
Вы можете указать часовой пояс сервера по умолчанию при его запуске, см. http : //dev.mysql.com/doc/refman/5.1/en/server-options.html и, в частности, параметр - default-time-zone = timezone
. Вы можете проверить глобальный часовой пояс и часовой пояс сеанса с помощью
SELECT @@global.time_zone, @@session.time_zone;
, установленного одним или обоими, с помощью оператора SET
, & c; см. http://dev.mysql.com/doc/refman/5.1/en/time-zone-support.html для получения более подробной информации.