Šablony upravují a formátují výstup generovaný rsyslog. Umožňují zadat libovolný formát, který uživatel může chtít. Používají se také pro dynamické generování názvů souborů. Následuje syntaxe pro vytvoření šablony:
$template TEMPLATE_NAME,"text %PROPERTY% text", [OPTION]
Pole jsou popsána následovně:
Pole | Účel |
---|---|
$template | Směrnice, která definuje šablonu |
TEMPLATE_NAME | Název šablony |
„text“ | Aktuální text šablony obklopený uvozovkami |
%PROPERTY% | Konkrétní obsah zprávy obklopený znaky procent |
MOŽNOST | Určuje možnosti, které upravují funkčnost šablony |
Šablony lze použít ke generování dynamických názvů souborů. Chcete-li vytvořit nový soubor pro každou jedinečnou vlastnost, zadejte vlastnost jako součást cesty k souboru. Použijte například timegenerated vlastnost pro generování jedinečného názvu souboru pro každou zprávu rsyslog:
$template DynamicFile,“/var/log/%timegenerated%-test.log”
Chcete-li upravit výstup rsyslog, zadejte název šablony v pravidle. Dynamické soubory jsou reprezentovány šablonou a předponou otazník (?). Příklad:
*.* ?DynamicFile
Vlastnosti
Vlastnosti uvnitř šablony můžete použít k odkazování na konkrétní obsah zprávy rsyslog. K definování vlastnosti uvnitř šablony použijte následující syntaxi:
%PROPERTY_NAME[:FROM_CHAR:TO_CHAR:OPTION]%
Pole jsou popsána následovně:
Pole | Účel |
---|---|
PROPERTY_NAME | Název vlastnosti |
FROM_CHAR a TO_CHAR | Rozsah znaků, na které zadaná vlastnost působí |
MOŽNOST | Možnosti vlastností |
Seznam dostupných nemovitostí a popisy lze nalézt na http://www.rsyslog.com/doc/property_replacer.html.
1. Následující vlastnost představuje celý text zprávy rsyslog:
%msg%
2. Následující příklad představuje první dva znaky textu zprávy:
%msg:1:2%
3. Následující vlastnost představuje název hostitele ve zprávě rsyslog:
%hostname%
4. Následující vlastnost představuje zařízení ze zprávy v textové podobě:
%syslogfacility-text%
Šablona:Příklad
Následující příklad definuje šablonu s názvem class, která formátuje zprávu rsyslog tak, aby vydávala časové razítko zprávy, zařízení v textové podobě, prioritu v textové formě, název hostitele a text zprávy a končí novým řádkem:
$template class, "Time: %timestamp%, Facility: %syslogfacilitytext%, Priority: %syslogpriority-text%, Hostname: %hostname%, Message: %msg%\n"
Chcete-li použít šablonu pro zprávy /var/log/logfile, zadejte název šablony takto:
*.* /var/log/logfile;classCentOS / RedHat :Průvodce pro začátečníky správou souborů protokolu
Porozumění akcím rsyslog
Pochopení možností filtru rsyslog