Я пытаюсь удалить разделasticsearch {*} из файла конфигурации из-за отсутствия других опций.
output {
if [env] {
if [containerimage] and [containerimage] != "apache" {
file {
path => "/var/log/logstash/logs/%{[env]}/%{file}-%{+YYYY-MM-dd}"
}
elasticsearch {
hosts => ["{{elasticsearch/host}}:{{elasticsearch/port}}"]
template_overwrite => true
}
}
}
}
Я попытался отменить команду sed, найденную в stackoverflow, но удаляет окончание} изфайлы конфигурации тоже.
[root@indexer conf.d]# sed '/{/{:1; /}/!{N; b1}; /elasticsearch/!p}; d' example
output {
if [env] {
if [containerimage] and [containerimage] != "apache" {
file {
path => "/var/log/logstash/logs/%{[env]}/%{file}-%{+YYYY-MM-dd}"
Это может быть связано с}} в cfg, который должен быть там.Есть идеи по преодолению этой проблемы?Заранее спасибо
Редактировать:
какой-то другой эксперимент:
sed '/elasticsearch {/{:1; /}/!{N; b1} }; /elasticsearch/!p; d' example
output {
if [env] {
if [containerimage] and [containerimage] != "apache" {
file {
path => "/var/log/logstash/logs/%{[env]}/%{file}-%{+YYYY-MM-dd}"
}
template_overwrite => true
}
}
}
}
Но оставляет template_overwrite и некоторые закрывающие скобки.