Я не могу получить псевдоним ролика ILM для принятия переменных. В этом конкретном случае у нас будут кластерные журналы ELK для нескольких сред. Записи журнала будут помечены с учетом их среды перед входом в конвейер logstash. Я хотел бы, чтобы записи шли на правильный псевдоним, но я получаю следующую ошибку при запуске logstash (усеченная трассировка стека):
Произошла непредвиденная ошибка! {: Ошибка => java.net.URISyntaxException:
Неверно сформированная escape-пара с индексом 0:% {[fields] [Environment]} - logs
Вот мой конвейер logstash:
input {
rabbitmq {
host => "rabbitmq"
port => 5672
user => "guest"
password => "guest"
subscription_retry_interval_seconds => 5
queue => "logstash-queue"
exchange => "logs"
exchange_type => "direct"
durable => true
key => "logstash"
}
}
filter {
mutate {
rename => {"Properties" => "fields"}
}
mutate {
lowercase => ["[fields][Environment]"]
}
}
output {
elasticsearch {
hosts => ["http://elasticsearch:9200"]
template_name=>"app-logs"
ilm_enabled => true
ilm_rollover_alias => "%{[fields][Environment]}-logs"
ilm_pattern => "{now/d}-000001"
ilm_policy => "30_day_retention_logs_policy"
}
}