Event Lanes¶
Vztah k LogMan.io Parsec¶
TeskaLabs LogMan.io Parsec čte důležitou část své konfigurace z event lane. Tato konfigurace zahrnuje:
- Kafka témata, ze kterých se přijímají události a do kterých se posílají parsované a chybové události
- Pravidla pro parsování (deklarace)
- (volitelně) časové pásmo, charset a schéma
group.id
pro konzumaci zreceived
tématu
Proto každá instance LogMan.io Parsec běží pod přesně jedním event lane (pod přesně jedním tenantem).
Deklarace¶
Toto je minimální požadovaná definice event lane, nacházející se v adresáři /EventLanes/<tenant>
v knihovně:
---
define:
type: lmio/event-lane
parsec:
name: /Parsers/path/to/parser/ # (1)
kafka:
received:
topic: received.tenant.stream
events:
topic: events.tenant.stream
others:
topic: others.tenant
- Cesta k pravidlu pro parsování. Musí začínat
/Parsers
. Standardní formát cesty je<vendor>/<type>
, např.Microsoft/IIS
neboOracle/Listener
, ale v případě, že se používá pouze jedna technologie, může být použit pouze název poskytovatele, např.Zabbix
neboDevolutions
.
Když se spustí Parsec a načte event lane, vytvoří se dva pipeline:
ParsecPipeline
mezi tématy received a eventsErrorPipeline
cílený na téma others
group.id
použitý pro konzumaci z tématu received má tvar: lmio-parsec-<tenant>-<eventlane>
Časové pásmo, schéma, charset¶
Časové pásmo, schéma a charset jsou standardně čteny z konfigurace tenant, ale tyto vlastnosti mohou být přepsány v event lane:
---
define:
type: lmio/event-lane
schema: /Schemas/CEF.yaml
timezone: UTC
charset: utf-16
schema
: Jaké schéma se používá pro parsování. Mapování a obohacovače jsou specifické pro schéma a schema
musí být nastaveno v deklaraci. Pokud se používá jiné schéma, tyto deklarace jsou vynechány.
timezone
: Pokud zdroj logů produkuje logy ve specifickém časovém pásmu, které se liší od výchozího časového pásma tenant, musí to být zde specifikováno.
Název časového pásma musí být v souladu s IANA Time Zone Database. Interně jsou všechny časové údaje převedeny do UTC.
charset
: Pokud zdroj logů produkuje logy v charsetu (nebo kódování) odlišném od UTF-8, musí zde být charset specifikován.
Seznam podporovaných charset je zde.
Interně je každý text kódován v UTF-8.
Možnosti parsování¶
Další možnosti parsování jsou také specifikovány v event lane.
parsec:
name: /Parsers/path/to/parser/
event:
extract:
ip_addresses: true # Regex extrakce IPv4 a IPv6 adres
drop:
empty: true # Prázdné události nejsou zpracovány