ELK logstash 구성 구문
logstash에서 지원하는 데이터 형식은 다음과 같습니다.
필드 참조
logstash 필드 인용 문법.Logstash 설정에서 필드의 값을 사용하려면, 필드의 이름을 중괄호 [] 에 쓰면 됩니다. 이를 필드 인용이라고 합니다.필드의 차원도 주의해야 한다.최상위 필드를 참조하는 경우 []을 생략하고 필드 이름을 직접 지정할 수 있습니다.중첩된 필드를 참조하려면 [top-level field] [nested field]와 같은 전체 경로를 지정해야 합니다.
다음은 다섯 개의 최고급 필드 (에이전트, IP, Request,response, ua) 와 세 개의 플러그인 필드 (status,bytes,os) 가 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
{
"agent"
:
"Mozilla/5.0 (compatible; MSIE 9.0)"
,
"ip"
:
"192.168.24.44"
,
"request"
:
"/index.html"
"response"
:
{
"status"
:
200
,
"bytes"
:
52353
}
,
"ua"
:
{
"os"
:
"Windows 7"
}
}
os 필드를 인용하기 위해서 [ua][os]를 지정해야 합니다.리퀘스트와 같은 최고급 필드를 인용하면 리퀘스트를 간단하게 지정할 수 있습니다.
sprintf 형식
필드 인용 형식도logstash에서sprintf 형식을 호출하는 데 사용할 수 있습니다.이 형식은 다른 문자열에서 필드 값을 인용할 수 있습니다.예:
1
2
3
4
5
output
{
statsd
{
increment
=
>
"apache.%{[response][status]}"
}
}
시간을 포맷할 수도 있습니다.예:
1
2
3
4
5
output
{
file
{
path
=
>
"/var/log/%{type}.%{+yyyy.MM.dd.HH}"
}
}
조건판단
필터와 output이 특정한 이벤트를 처리하는 조건을 결정합니다.
logstash 조건은 프로그래밍 언어와 유사합니다.조건은 if, else if, else 문장을 지원하며 끼워 넣을 수 있습니다.
조건 구문은 다음과 같습니다.
1
2
3
4
5
6
7
if
EXPRESSION
{
.
.
.
}
else
if
EXPRESSION
{
.
.
.
}
else
{
.
.
.
}
비교 작업은 다음과 같습니다.
상등:
==
,!=
,<
,>
,<=
,>=
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
logstash:grok 대신dissect로 성능을 향상시킵니다.파이프의 성능을 향상시키는 간단한 방법은 다른 필터로 대체할 수 있는지 확인하는 것이다grok.내가 계속 grok 로 대체하고 있는 필터는 dissect 필터다.grok과dissect 사이의 주요 차이점은 disse...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.