您好logstash专家请帮帮我 在输入部分执行logstash配置时
input
{
file
{
path => "/TISUATWEB53/home/tisuat54/solstis/solstair-uat/solstis-persist-1/logs/solstispersist.log" #file to parse
sincedb_path =>"/TISUATWEB53/home/tisuat54/solstis/solstair-uat/solstis-persist-1/logs/solstispersist.db" #file to save position (used after restart)
start_position => "beginning" #start on the beginning of the file when no sincedb path created
}
}
filter {
grok {
# patterns_dir => ["../.././patterns/"]
patterns_dir => ["/TISUATWEB53/home/tisuat54/Tmon_LogStash/tmon-agent-3.2.3/patterns/"]
match => { "message" => "%{BEFORE_THREAD_NAME}(%{THREAD_NAME:thread_name})%{BEFORE_ANALYSISPROCESS_ID}(%{ONLY_DIGITS:analysisprocessId})%{BEFORE_INSERTIONMONITORING_ID}%{ONLY_DIGITS:insertionmonitorId}%{BEFORE_BIN_FILE}%{BINFILE:binfileName}"}
}
}
我们可以在属性文件中定义文件路径并引用path =>中的属性吗?和sincedb_path => 。
并且在过滤器部分中如何在patterns_dir中定义相对路径。我已经尝试过patterns_dir => [“../../patterns/”]但不能正常工作
答案 0 :(得分:2)
您可以在logstash中使用环境变量,因此您可以在文件中执行${VAR_FROM_ENVIRONMENT}
,然后在启动logstash之前设置该变量。例如:
export VAR_FROM_ENVIRONMENT="/TISUATWEB53/home/tisuat54"
bin/logstash -f logstash.conf
如果您在logstash-5之前运行logstash版本,则需要在logstash命令行中添加--allow-env
标志。