рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

GROK рд╕рд╣ рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛рдЪреА рд░рдЪрдирд╛ рдХрд░рдгреЗ

рдЬрд░ рддреБрдореНрд╣реА рд▓рд╡рдЪрд┐рдХ (ELK) рд╕реНрдЯреЕрдХ рд╡рд╛рдкрд░рдд рдЕрд╕рд╛рд▓ рдЖрдгрд┐ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪрдордзреНрдпреЗ рд╕рд╛рдиреБрдХреВрд▓ рд▓реЙрдЧрд╕реНрдЯреЕрд╢ рд▓реЙрдЧ рдореЕрдк рдХрд░рдгреНрдпрд╛рдд рд╕реНрд╡рд╛рд░рд╕реНрдп рдЕрд╕реЗрд▓, рддрд░ рд╣реЗ рдкреЛрд╕реНрдЯ рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рдЖрд╣реЗ.

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

ELK рд╕реНрдЯреЕрдХ рд╣реЗ рддреАрди рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдЪреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рдЖрд╣реЗ: Elasticsearch, Logstash рдЖрдгрд┐ Kibana. рддреЗ рдПрдХрддреНрд░рд┐рддрдкрдгреЗ рд▓реЙрдЧ рдореЕрдиреЗрдЬрдореЗрдВрдЯ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рддрдпрд╛рд░ рдХрд░рддрд╛рдд.

  • Elasticsearch рдПрдХ рд╢реЛрдз рдЖрдгрд┐ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкреНрд░рдгрд╛рд▓реА рдЖрд╣реЗ.
  • рд▓реЙрдЧрд╕реНрдЯреЕрд╢ рд╣реА рдПрдХ рд╕рд░реНрд╡реНрд╣рд░-рд╕рд╛рдЗрдб рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЖрд╣реЗ рдЬреА рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдиреЗрдХ рд╕реНрддреНрд░реЛрддрд╛рдВрдХрдбреВрди рдбреЗрдЯрд╛ рдЕрдВрддрд░реНрднреВрдд рдХрд░рддреЗ, рддреНрдпрд╛рдЪреЗ рд░реВрдкрд╛рдВрддрд░ рдХрд░рддреЗ рдЖрдгрд┐ рдирдВрддрд░ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рд╕рд╛рд░рдЦреНрдпрд╛ "рд╕реНрдЯреЕрд╢" рд╡рд░ рдкрд╛рдард╡рддреЗ.
  • рдХрд┐рдмрд╛рдирд╛ Elasticsearch рдордзреАрд▓ рдЪрд╛рд░реНрдЯ рдЖрдгрд┐ рдЖрд▓реЗрдЦ рд╡рд╛рдкрд░реВрди рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рдбреЗрдЯрд╛ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓рд╛рдпрдЭ рдХрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ.

рдмреАрдЯреНрд╕ рдирдВрддрд░ рдЖрд▓рд╛ рдЖрдгрд┐ рдПрдХ рд╣рд▓рдХрд╛ рдбреЗрдЯрд╛ рд╢рд┐рдкрд░ рдЖрд╣реЗ. рдмреАрдЯреНрд╕рдЪреНрдпрд╛ рдкрд░рд┐рдЪрдпрд╛рдиреЗ рдПрд▓реНрдХ рд╕реНрдЯреЕрдХрдЪреЗ рд▓рд╡рдЪрд┐рдХ рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░ рдЭрд╛рд▓реЗ, рдкрд░рдВрддреБ рддреЛ рдореБрджреНрджрд╛ рдирд╛рд╣реА.

рд╣рд╛ рд▓реЗрдЦ Grok рдмрджреНрджрд▓ рдЖрд╣реЗ, рдЬреЗ Logstash рдордзреАрд▓ рдПрдХ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдЖрд╣реЗ рдЬреЗ рддреБрдордЪреЗ рд▓реЙрдЧ рд╕реНрдЯреЕрд╢рдордзреНрдпреЗ рдкрд╛рдард╡рдгреНрдпрд╛рдкреВрд░реНрд╡реА рддреЗ рдмрджрд▓реВ рд╢рдХрддреЗ. рдЖрдордЪреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рдВрд╕рд╛рдареА, рдореА рдлрдХреНрдд Logstash рд╡рд░реВрди Elasticsearch рдордзреНрдпреЗ рдбреЗрдЯрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдмрджреНрджрд▓ рдмреЛрд▓реЗрди.

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

Grok рд╣реЗ рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ рдПрдХ рдлрд┐рд▓реНрдЯрд░ рдЖрд╣реЗ рдЬреНрдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рд╕рдВрд░рдЪрд┐рдд рдЖрдгрд┐ рдХреНрд╡реЗрд░реА рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рдЧреЛрд╖реНрдЯреАрдордзреНрдпреЗ рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ рдкрд╛рд░реНрд╕ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╣реЗ рд░реЗрдЧреНрдпреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди (рд░реЗрдЬреЗрдХреНрд╕) рд╡рд░ рдмрд╕рддреЗ рдЖрдгрд┐ рд▓реЙрдЧ рдлрд╛рдЗрд▓реНрд╕рдордзреАрд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдЬреБрд│рдгреНрдпрд╛рд╕рд╛рдареА рдордЬрдХреВрд░ рдкреЕрдЯрд░реНрди рд╡рд╛рдкрд░рддреЗ.

рдЬрд╕реЗ рдЖрдкрдг рдкреБрдвреАрд▓ рд╡рд┐рднрд╛рдЧрд╛рдВрдордзреНрдпреЗ рдкрд╛рд╣рдгрд╛рд░ рдЖрд╣реЛрдд, рдХрд╛рд░реНрдпрдХреНрд╖рдо рд▓реЙрдЧ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирд╛рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд Grok рд╡рд╛рдкрд░рд▓реНрдпрд╛рдиреЗ рдореЛрдард╛ рдлрд░рдХ рдкрдбрддреЛ.

Grok рд╢рд┐рд╡рд╛рдп рддреБрдордЪрд╛ рд▓реЙрдЧ рдбреЗрдЯрд╛ рдЕрд╕рдВрд░рдЪрд┐рдд рдЖрд╣реЗ

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

Grok рд╢рд┐рд╡рд╛рдп, рд▓реЙрдЧрд╕реНрдЯреЕрд╢ рд╡рд░реВрди Elasticsearch рд▓рд╛ рд▓реЙрдЧ рдкрд╛рдард╡рд▓реЗ рдЬрд╛рддрд╛рдд рдЖрдгрд┐ Kibana рдордзреНрдпреЗ рд░реЗрдВрдбрд░ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд рддреЗрд╡реНрд╣рд╛ рддреЗ рдлрдХреНрдд рд╕рдВрджреЗрд╢ рдореВрд▓реНрдпрд╛рдордзреНрдпреЗ рджрд┐рд╕рддрд╛рдд.

рдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдд рдЕрд░реНрдердкреВрд░реНрдг рдорд╛рд╣рд┐рддреАрдЪреА рдЪреМрдХрд╢реА рдХрд░рдгреЗ рдХрдареАрдг рдЖрд╣реЗ рдХрд╛рд░рдг рд╕рд░реНрд╡ рд▓реЙрдЧ рдбреЗрдЯрд╛ рдПрдХрд╛рдЪ рдХреАрдордзреНрдпреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд▓реЙрдЧ рд╕рдВрджреЗрд╢ рдЕрдзрд┐рдХ рдЪрд╛рдВрдЧрд▓реНрдпрд╛ рдкреНрд░рдХрд╛рд░реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХреЗрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рд╕ рддреЗ рдЪрд╛рдВрдЧрд▓реЗ рд╣реЛрдИрд▓.

рдиреЛрдВрджреАрдВрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛

localhost GET /v2/applink/5c2f4bb3e9fda1234edc64d 400 46ms 5bc6e716b5d6cb35fc9687c0

рддреБрдореНрд╣реА рдХрдЪреНрдЪреНрдпрд╛ рдбреЗрдЯрд╛рдХрдбреЗ рдмрд╛рд░рдХрд╛рдИрдиреЗ рдкрд╛рд╣рд┐рд▓реНрдпрд╛рд╕, рддреБрдореНрд╣рд╛рд▓рд╛ рджрд┐рд╕реЗрд▓ рдХреА рддреНрдпрд╛рдд рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рд╡реЗрдЧрд╡реЗрдЧрд│реЗ рднрд╛рдЧ рдЖрд╣реЗрдд, рдкреНрд░рддреНрдпреЗрдХ рднрд╛рдЧ рдПрдХрд╛ рдЬрд╛рдЧреЗрдиреЗ рд╡рд┐рднрдХреНрдд рдХреЗрд▓рд╛ рдЖрд╣реЗ.

рдЕрдзрд┐рдХ рдЕрдиреБрднрд╡реА рд╡рд┐рдХрд╕рдХрд╛рдВрд╕рд╛рдареА, рддреБрдореНрд╣реА рдХрджрд╛рдЪрд┐рдд рдЕрдВрджрд╛рдЬ рд▓рд╛рд╡реВ рд╢рдХрддрд╛ рдХреА рдкреНрд░рддреНрдпреЗрдХ рднрд╛рдЧрд╛рдЪрд╛ рдЕрд░реНрде рдХрд╛рдп рдЖрд╣реЗ рдЖрдгрд┐ API рдХреЙрд▓рд╡рд░реВрди рддреЛ рд▓реЙрдЧ рд╕рдВрджреЗрд╢ рдХрд╛рдп рдЖрд╣реЗ. рдкреНрд░рддреНрдпреЗрдХ рдЖрдпрдЯрдордЪреЗ рд╕рд╛рджрд░реАрдХрд░рдг рдЦрд╛рд▓реА рджрд┐рд▓реЗрд▓реЗ рдЖрд╣реЗ.

рдЖрдордЪреНрдпрд╛ рдбреЗрдЯрд╛рдЪреЗ рд╕рдВрд░рдЪрд┐рдд рджреГрд╢реНрдп

  • рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ == рдкрд░реНрдпрд╛рд╡рд░рдг
  • рдорд┐рд│рд╡рд╛ == рдкрджреНрдзрдд
  • тАЛ /v2/applink/5c2f4bb3e9fda1234edc64d == url
  • 400 == рдкреНрд░рддрд┐рд╕рд╛рдж_рд╕реНрдерд┐рддреА
  • 46ms == рдкреНрд░рддрд┐рд╕рд╛рдж_рд╡реЗрд│
  • тАЛ 5bc6e716b5d6cb35fc9687c0 == user_id

рдЬрд╕реЗ рдЖрдкрдг рд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛рдордзреНрдпреЗ рдкрд╛рд╣рддреЛ, рдЕрд╕рдВрд░рдЪрд┐рдд рд▓реЙрдЧрд╕рд╛рдареА рдПрдХ рдСрд░реНрдбрд░ рдЖрд╣реЗ. рдкреБрдврдЪреА рдкрд╛рдпрд░реА рдореНрд╣рдгрдЬреЗ рдХрдЪреНрдЪреНрдпрд╛ рдбреЗрдЯрд╛рдЪреА рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ. рдЗрдереЗрдЪ рдЧреНрд░реЛрдХ рдЪрдордХрддреЛ.

Grok рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕

рдЕрдВрдЧрднреВрдд Grok рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕

рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд▓реЙрдЧрд╕реНрдЯреЕрд╢ 100 рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдЕрдВрдЧрднреВрдд рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕рд╕рд╣ рдпреЗрддреЛ. apache, linux, haproxy, aws рдЖрдгрд┐ рдЗрддрд░ рд╕рд╛рд░рдЦреНрдпрд╛ рд╕рд╛рдорд╛рдиреНрдп syslogs рд╕рд╛рдареА рдЬреЗрд╡реНрд╣рд╛ рд╢рдХреНрдп рдЕрд╕реЗрд▓ рддреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА рдпрд╛рдЪрд╛ рдирдХреНрдХреАрдЪ рдлрд╛рдпрджрд╛ рдШреНрдпрд╛рд╡рд╛.

рддрдерд╛рдкрд┐, рд╡рд░реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдкреНрд░рдорд╛рдгреЗ рдЖрдкрд▓реНрдпрд╛рдХрдбреЗ рд╕рд╛рдиреБрдХреВрд▓ рд▓реЙрдЧ рдЕрд╕рд▓реНрдпрд╛рд╕ рдХрд╛рдп рд╣реЛрддреЗ? рддреБрдореНрд╣реА рддреБрдордЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ Grok рдЯреЗрдореНрдкрд▓реЗрдЯ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рд╕рд╛рдиреБрдХреВрд▓ Grok рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕

рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ Grok рдЯреЗрдореНрдкрд▓реЗрдЯ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рд╛рд╡рд╛ рд▓рд╛рдЧреЗрд▓. рдореА рд╡рд╛рдкрд░рд▓реЗ Grok рдбреАрдмрдЧрд░ ╨╕ Grok рдирдореБрдиреЗ.

рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА Grok рдЯреЗрдореНрдкрд▓реЗрдЯ рд╡рд╛рдХреНрдпрд░рдЪрдирд╛ рдЦрд╛рд▓реАрд▓рдкреНрд░рдорд╛рдгреЗ рдЖрд╣реЗ: %{SYNTAX:SEMANTIC}

рдкрд╣рд┐рд▓реА рдЧреЛрд╖реНрдЯ рдореА рдЯреЕрдмрд╡рд░ рдЬрд╛рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХреЗрд▓рд╛ рд╢реЛрдзрд╛ Grok рдбреАрдмрдЧрд░ рдордзреНрдпреЗ. рдорд▓рд╛ рд╡рд╛рдЯрд▓реЗ рдХреА рд╣реЗ рд╕рд╛рдзрди рдЖрдкреЛрдЖрдк Grok рдкреЕрдЯрд░реНрди рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░реВ рд╢рдХрд▓реЗ рддрд░ рддреЗ рдЫрд╛рди рд╣реЛрдИрд▓, рдкрд░рдВрддреБ рддреЗ рдлрд╛рд░рд╕реЗ рдЙрдкрдпреБрдХреНрдд рдирд╡реНрд╣рддреЗ рдХрд╛рд░рдг рддреНрдпрд╛рдд рдлрдХреНрдд рджреЛрди рдЬреБрд│рдгреНрдпрд╛ рдЖрдврд│рд▓реНрдпрд╛.

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

рд╣рд╛ рд╢реЛрдз рд╡рд╛рдкрд░реВрди, рдореА рд▓рд╡рдЪрд┐рдХ рдЧрд┐рдердм рдкреГрд╖реНрдард╛рд╡рд░реАрд▓ рд╡рд╛рдХреНрдпрд░рдЪрдирд╛ рд╡рд╛рдкрд░реВрди рдЧреНрд░реЛрдХ рдбреАрдмрдЧрд░рдордзреНрдпреЗ рдорд╛рдЭреЗ рд╕реНрд╡рддрдГрдЪреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕ рд╕реБрд░реБрд╡рд╛рдд рдХреЗрд▓реА.

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рд╕рд┐рдВрдЯреЕрдХреНрд╕рд╕рд╣ рдЦреЗрд│рд▓реНрдпрд╛рдирдВрддрд░, рдореА рд╢реЗрд╡рдЯреА рд▓реЙрдЧ рдбреЗрдЯрд╛рдЪреА рд░рдЪрдирд╛ рдорд▓рд╛ рдкрд╛рд╣рд┐рдЬреЗ рддрд╢реА рдХрд░рдгреНрдпрд╛рдд рд╕рдХреНрд╖рдо рдЭрд╛рд▓реЛ.

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

Grok рдбреАрдмрдЧрд░ рд▓рд┐рдВрдХ https://grokdebug.herokuapp.com/

рдореВрд│ рдордЬрдХреВрд░:

localhost GET /v2/applink/5c2f4bb3e9fda1234edc64d 400 46ms 5bc6e716b5d6cb35fc9687c0

рдирдореБрдирд╛:

%{WORD:environment} %{WORD:method} %{URIPATH:url} %{NUMBER:response_status} %{WORD:response_time} %{USERNAME:user_id}

рдХрд╛рдп рдЭрд╛рд▓рдВ рд╢реЗрд╡рдЯреА

{
  "environment": [
    [
      "localhost"
    ]
  ],
  "method": [
    [
      "GET"
    ]
  ],
  "url": [
    [
      "/v2/applink/5c2f4bb3e9fda1234edc64d"
    ]
  ],
  "response_status": [
    [
      "400"
    ]
  ],
  "BASE10NUM": [
    [
      "400"
    ]
  ],
  "response_time": [
    [
      "46ms"
    ]
  ],
  "user_id": [
    [
      "5bc6e716b5d6cb35fc9687c0"
    ]
  ]
}

Grok рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдгрд┐ рдореЕрдк рдХреЗрд▓реЗрд▓рд╛ рдбреЗрдЯрд╛ рд╣рд╛рддрд╛рдд рдШреЗрдКрди, рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреНрдпреЗ рдЬреЛрдбрдгреЗ рд╣реА рд╢реЗрд╡рдЯрдЪреА рдкрд╛рдпрд░реА рдЖрд╣реЗ.

Logstash.conf рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓ рдЕрдкрдбреЗрдЯ рдХрд░рдд рдЖрд╣реЗ

рддреБрдореНрд╣реА ELK рд╕реНрдЯреЕрдХ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░, рд▓реЙрдЧрд╕реНрдЯреЕрд╢ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╡рд░ рдЬрд╛:

sudo vi /etc/logstash/conf.d/logstash.conf

рдмрджрд▓ рдкреЗрд╕реНрдЯ рдХрд░рд╛.

input { 
  file {
    path => "/your_logs/*.log"
  }
}
filter{
  grok {
    match => { "message" => "%{WORD:environment} %{WORD:method} %{URIPATH:url} %{NUMBER:response_status} %{WORD:response_time} %{USERNAME:user_id}"}
  }
}
output {
  elasticsearch {
    hosts => [ "localhost:9200" ]
  }
}

рддреБрдордЪреЗ рдмрджрд▓ рд╕реЗрд╡реНрд╣ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, Logstash рд░реАрд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рд╛ рдЖрдгрд┐ рддреЗ рдЕрдЬреВрдирд╣реА рдХрд╛рдо рдХрд░рдд рдЕрд╕рд▓реНрдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреНрдпрд╛рдЪреА рд╕реНрдерд┐рддреА рддрдкрд╛рд╕рд╛.

sudo service logstash restart
sudo service logstash status

рд╢реЗрд╡рдЯреА, рдмрджрд▓ рдкреНрд░рднрд╛рд╡реА рдЭрд╛рд▓реЗ рдЖрд╣реЗрдд рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХрд┐рдмрд╛рдирд╛ рдордзреАрд▓ рд▓реЙрдЧрд╕реНрдЯреЕрд╢рд╕рд╛рдареА рддреБрдордЪрд╛ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рдЗрдВрдбреЗрдХреНрд╕ рдЕрдкрдбреЗрдЯ рдХреЗрд▓реНрдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рд╛!

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

Grok рд╕рд╣, рддреБрдордЪрд╛ рд▓реЙрдЧ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрд┐рдд рдЖрд╣реЗ!

рд▓реЙрдЧрд╕реНрдЯреЕрд╢рдордзреАрд▓ GROK рд╡рд╛рдкрд░реВрди рд▓реЙрдЧрдордзреВрди рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ ELK рд╕реНрдЯреЕрдХрдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛

рдЬрд╕реЗ рдЖрдкрдг рд╡рд░реАрд▓ рдкреНрд░рддрд┐рдореЗрдд рдкрд╛рд╣реВ рд╢рдХрддреЛ, Grok рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪрд╕рд╣ рд▓реЙрдЧ рдбреЗрдЯрд╛ рдЖрдкреЛрдЖрдк рдЬреБрд│рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЖрд╣реЗ. рд╣реЗ рд▓реЙрдЧ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ рдорд╛рд╣рд┐рддреА рджреНрд░реБрддрдкрдгреЗ рдХреНрд╡реЗрд░реА рдХрд░рдгреЗ рд╕реЛрдкреЗ рдХрд░рддреЗ. рдбреАрдмрдЧ рдХрд░рдгреНтАНрдпрд╛рд╕рд╛рдареА рд▓реЙрдЧ рдлрд╛рдпрд▓реА рдЦреЛрджрдгреНтАНрдпрд╛рдРрд╡рдЬреА, рддреБрдореНрд╣реА рдЬреЗ рд╢реЛрдзрдд рдЖрд╣рд╛рдд, рдЬрд╕реЗ рдХреА рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд┐рдВрд╡рд╛ url рдиреБрд╕рд╛рд░ рдлрд┐рд▓реНрдЯрд░ рдХрд░реВ рд╢рдХрддрд╛.

Grok рдЕрднрд┐рд╡реНрдпрдХреНрддреА рд╡рд╛рдкрд░реВрди рдкрд╣рд╛! рддреБрдордЪреНрдпрд╛рдХрдбреЗ рд╣реЗ рдХрд░рдгреНрдпрд╛рдЪрд╛ рджреБрд╕рд░рд╛ рдорд╛рд░реНрдЧ рдЕрд╕рд▓реНрдпрд╛рд╕ рдХрд┐рдВрд╡рд╛ рд╡рд░реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдВрд╕рд╣ рдХрд╛рд╣реА рд╕рдорд╕реНрдпрд╛ рдЕрд╕рд▓реНрдпрд╛рд╕, рдорд▓рд╛ рдХрд│рд╡рдгреНрдпрд╛рд╕рд╛рдареА рдЦрд╛рд▓реА рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рд╣рд╛.

рд╡рд╛рдЪрд▓реНрдпрд╛рдмрджреНрджрд▓ рдзрдиреНрдпрд╡рд╛рдж тАФ рдЖрдгрд┐ рдЕрдзрд┐рдХ рдордиреЛрд░рдВрдЬрдХ рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рдЕрднрд┐рдпрд╛рдВрддреНрд░рд┐рдХреА рд▓реЗрдЦрд╛рдВрд╕рд╛рдареА рдХреГрдкрдпрд╛ рдорд▓рд╛ рдпреЗрдереЗ рдорд╛рдзреНрдпрдорд╛рд╡рд░ рдлреЙрд▓реЛ рдХрд░рд╛!

рд╕рдВрд╕рд╛рдзрдиреЗ

https://www.elastic.co/blog/do-you-grok-grok
https://github.com/elastic/logstash/blob/v1.4.2/patterns/grok-patterns
https://grokdebug.herokuapp.com/

PS рд╕реНрддреНрд░реЛрдд рджреБрд╡рд╛

рджреНрд╡рд╛рд░реЗ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдЪреЕрдиреЗрд▓ Elasticsearch

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛