TeskaLabs LogMan.io Integrační služba
LogMan.io Integ umožňuje integraci TeskaLabs LogMan.io s podporovanými externími systémy prostřednictvím očekávaného formátu zprávy a vstupně/výstupního protokolu.
LogMan.io Integ využívá deklarativní Transformery specifikované v YAML souborech a uložené ve skupině (např. integ atd.) v knihovně LogMan.io.
Konfigurace
K připojení LogMan.io k externímu systému, jako je ArcSight,
konfigurujte instanci LogMan.io Integ,
přičemž specifikujete skupinu transformátorů,
Kafka vstup a Kafka nebo TCP výstupy v vlastních sekcích, jako MyTCPOutput
:
# Nastavení transformátorů
[declarations]
library=/library
groups=integ
include_search_path=filters/*
# Nastavení vstupu
[connection:KafkaConnection]
bootstrap_servers=lm1:19092,lm2:29092,lm3:39092
[pipeline:TransformersPipeline:KafkaSource]
topic=lmio-events
# Nastavení výstupů - jsou vybírány individuálními transformátory
[MyTCPOutput]
address=lm1:9999
[MyKafkaOutput]
topic=lmio-output
Transformery
Transformery jsou deklarativní procesory, které vytvářejí vlastní věnovaný pipeline s KafkaSource a výstupním modulem.
Příklad
---
define:
name: ArcSight Transformer for Correlations
type: transformer/default
format: string
output:
- type: kafka/tcp/unix-stream/null
config: MyTCPOutput
format: string/json
latch: 0
predicate:
!EQ
- !ITEM EVENT type
- Correlation
transform:
!JOIN
delimiter: ""
items:
- !JOIN
delimiter: "|"
items:
- CEF:0
- TeskaLabs
- LogMan.io
- 1.2.3
- !ITEM EVENT name
- !DICT.FORMAT
what: !EVENT
type: cef
Sekce define
Tato sekce obsahuje společnou definici a metadata.
Položka name
Krátké lidsky čitelné jméno této deklarace.
Položka type
Typ této deklarace, musí být transformer/default
.
Položka description
(volitelné)
Delší, případně víceliniový, lidsky čitelný popis deklarace.
Položka field_alias
(volitelné)
Název aliasového vyhledávacího pole, které má být načteno, takže aliasová jména atributů událostí mohou být používána v deklaraci spolu s jejich kanonickými jmény.
Sekce output
Sekce output
specifikuje seznamy výstupů.
Položka type
Typ výstupu, např. kafka, unix-stream, tcp, null.
Položka format
Formát události produkované transformátorem, buď string
nebo json
(výchozí: string
).
Položka config
Konfigurační sekce pro daný výstup uložený v souboru .conf
,
například MyKafkaOutput
nebo MyTCPOutput
(viz konfigurace výše).
Specifikujte topic
pro Kafka výstup a address
pro TCP/Unix Stream.
Položka latch
Pokud je nastavena, výstupní události jsou ukládány do latch fronty, aby byly přístupné prostřednictvím periodického API volání na /latch
. Počet uložených událostí je předán pomocí hodnoty, např. latch: 30 bude ukládat posledních 30 událostí pro každý transformátor. Výchozí: !!null.
Sekce predicate
(volitelné)
predicate
filtruje příchozí události pomocí výrazu.
Pokud výraz vrátí True
, událost vstoupí do sekce transform
.
Pokud výraz vrátí False
, událost je přeskočena.
Ostatní vrácené hodnoty jsou nedefinované.
Tato sekce může být použita k urychlení integrace přeskočením řádků s očividně nerelevantním obsahem.
Zahrnutí vnořených filtrů predicate
Filtry predicate jsou výrazy umístěné v samostatném souboru, které mohou být zahrnuty do mnoha různých predikátů jako jejich části.
Pokud chcete zahrnout externí filtr predikátů, umístěný buď ve složce include
nebo ve složce filters
(tato je globální složkou umístěnou na nejvyšší úrovni hierarchie knihovny LogMan.io),
použijte výraz !INCLUDE
:
!INCLUDE predicate_filter
kde predicate_filter
je jméno souboru plus přípona .yaml
.
Obsah predicate_filter.yaml
je výraz, který má být zahrnut, například:
---
!EQ
- !ITEM EVENT category
- "MyEventCategory"
Sekce transform
Tato sekce specifikuje skutečný transformující mechanismus.
Očekává, že bude vrácen slovník nebo None
, což znamená, že transformace nebyla úspěšná.