ELK logstash 구성 구문

3415 단어 logstash구문
데이터 형식
logstash에서 지원하는 데이터 형식은 다음과 같습니다.
  • array 그룹은 단일 또는 여러 문자열의 값일 수 있습니다.path=> [/var/log/messages], [/var/log/*.log] path=> [/data/mysql/mysql.log]를 여러 번 지정하면 배열을 추가합니다.이 실례 path 수조는 세 개의 문자열 요소를 포함합니다.
  • boolean 부울 값은 TRUE 또는 false여야 합니다.true 및 false에는 따옴표가 있을 수 없습니다.ssl_enable => true
  • bytes에서 바이트 단위를 지정합니다.지원되는 단위는 SI(k M G T P E ZY)와 Binary(Ki Mi Gi Ti Pi Ei Zi Yi)입니다.Binary 단위는 1024, SI 단위는 1000입니다.대소문자 및 무시 값과 단위 사이의 공백을 구분하지 않습니다.단위가 지정되지 않으면 기본값은 byte입니다.my_bytes => "1113" # 1113 bytesmy_bytes => "10MiB" # 10485760 bytesmy_bytes => "100kib" # 102400 bytesmy_bytes => "180 mb" # 180000000 bytes
  • Codeclogstash 인코딩 이름은 데이터 인코딩을 나타내는 데 사용됩니다.input과 output 세그먼트에 사용합니다.데이터 처리에 편리하다.만약 input과 output이 적당한 인코딩을 사용한다면, 단독 Filter가 데이터를 처리할 필요가 없습니다.codec => "json"
  • hash 키 값이 맞습니다. 여러 키 값이 쉼표가 아닌 공백으로 구분됩니다.match => {"field1" => "value1""field2" => "value2"... }
  • number는 유효한 수치, 부동점수 또는 정수여야 합니다.port => 33
  • password는 별도의 문자열입니다.my_password => "password"
  • path는 유효한 운영체제 경로를 나타냅니다.my_path => "/tmp/logstash"
  • stringname => "Hello world"name => 'It\'s a beautiful day'

  • 필드 참조
    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
    {
      
    .
    .
    .
    }
    비교 작업은 다음과 같습니다.
    상등:==,!=,<,>,<=,>=

    좋은 웹페이지 즐겨찾기