Linux-loggfilsövervakning i System Center Operations Manager
Viktigt
Den här versionen av Operations Manager har nått slutet av supporten. Vi rekommenderar att du uppgraderar till Operations Manager 2022.
Anteckning
System Center Operations Manager stöder inte fluentD-baserad loggfilsövervakning när OMS-agenten dras tillbaka, vilket är planerat till augusti 2024.
System Center Operations Manager har nu förbättrade funktioner för övervakning av loggfiler för Linux-servrar med hjälp av den senaste versionen av agenten som använder Fluentd. Den här uppdateringen ger följande förbättringar jämfört med tidigare övervakning av loggfiler:
- Jokertecken i loggfilens namn och sökväg.
- Nya matchningsmönster för anpassningsbar loggsökning som enkel matchning, exklusiv matchning, korrelerad matchning, upprepad korrelation och exklusiv korrelation.
- Stöd för allmänna Fluentd-plugin-program som publicerats av Fluentd-communityn.
Grundläggande åtgärd
Den grundläggande åtgärden för övervakning av loggfiler i Linux omfattar följande steg:
- Posten skrivs till en logg på en Linux-agent.
- Fluentd samlar in posten och skapar en händelse vid mönstermatchning.
- Händelsen skickas till OMED-tjänsten på hanteringsservern och loggas i System Center OMED-tjänstens händelselogg på hanteringsservern. ( Händelseloggen för System Center OMED-tjänsten skapas bara när en händelse har skickats från en Fluentd-agent)
- Regler och övervakare i ett anpassat hanteringspaket samlar in händelser och skapar aviseringar i Operations Manager.
Översikt över konfiguration
Följande steg krävs för att aktivera övervakning av loggfiler på Linux-agenter. Vart och ett av dessa steg beskrivs ingående i följande avsnitt.
- Importera det senaste Linux-hanteringspaketet.
- Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
- Skapa fluentd-konfigurationsfilen för att samla in loggar.
- Kopiera konfigurationsfilen till Linux-agenter.
- Skapa regler och övervakare med hjälp av exempelhanteringspaketet för att samla in händelser från loggen och skapa aviseringar.
Installera den senaste versionen av Linux-agenten
Den senaste versionen av Linux-agenten stöder Fluentd, vilket krävs för förbättrad övervakning av loggfiler. Du kan hämta information och installationsprocessen för den nya agenten i Installera agenten på UNIX och Linux från kommandoraden.
Konfigurera övervakning av Linux-loggfiler
Linux-hanteringspaketpaketet har den senaste Operations Manager-agenten (med Fluentd). För att konfigurera övervakning av Linux-loggfiler bör användarna utföra följande:
- Importera det senaste Linux-hanteringspaketet med standardprocessen för att installera ett hanteringspaket.
- Installera den nya Linux-agenten på Linux-servrarna. Detta kan göras via identifieringsguiden eller manuellt.
- Aktivera OMED-tjänsten på varje hanteringsserver i resurspoolen som hanterar Linux-agenterna.
OMED-tjänsten samlar in händelser från Fluentd och konverterar dem till Operations Manager-händelser. Användare bör importera ett anpassat hanteringspaket som kan generera aviseringar baserat på de händelser som tas emot från Linux-servrarna.
Du aktiverar OMED-tjänsten antingen från driftkonsolen eller manuellt på hanteringsservern eller gateway-servern.
Från driftkonsolen
- Från driftkonsolen går du till Övervaka>operationsmanager-hanteringsserverns>>hanteringsservertillstånd.
- Välj hanteringsservern i tillståndsfönstret Hanteringsservrar .
- I fönstret Uppgifter väljer du Hälsotjänstaktiviteter>Aktivera System Center OMED-server.
Manuellt
- Välj Start. I rutan Starta sökning anger du services.msc och trycker sedan på Retur.
- Högerklicka på tjänsten System Center Operations Manager External DataSource Service i informationsfönstret och välj Egenskaper.
- På fliken Allmänt i Starttyp väljer du Automatiskt och sedan OK.
- Högerklicka på tjänsten i informationsfönstret och välj Starta.
Skapa FluentD-konfigurationsfil
Du konfigurerar Fluentd-åtgärden med en konfigurationsfil. För loggövervakning måste du skapa en konfigurationsfil som innehåller sådan information som källloggens filnamn och sökväg och filter för att definiera vilka data som ska samlas in.
Master Fluentd-konfigurationsfilen omsagent.conf finns i /etc/opt/microsoft/omsagent/scom/conf/. Du kan lägga till övervakningskonfigurationen för loggfiler direkt i den här filen, men du bör skapa en separat konfigurationsfil för att bättre hantera de olika inställningarna. Sedan använder du ett @include -direktiv i huvudfilen för att inkludera din anpassade fil.
Om du till exempel har skapat logmonitoring.conf i /etc/opt/microsoft/omsagent/scom/conf/omsagent.d lägger du till någon av följande rader i fluent.conf:
#Include all configuration files
@include omsagent.d/*.conf
eller
#include single configuration file
@include omsagent.d/logmonitoring.conf
Du kan få information om Fluentd-konfigurationsfiler i Fluentd Configuration-filsyntaxen. I följande avsnitt beskrivs inställningar i olika direktiv för konfigurationsfilen som är unika för övervakning av loggfiler. Var och en innehåller exempelinställningar som du kan klistra in i en konfigurationsfil och ändra för dina behov.
Det finns en fullständig exempelkonfigurationsfil för loggövervakning som du kan granska och utvärdera innan du skapar en egen.
Källa
Källdirektivet definierar källan till de data som du samlar in. Här definierar du information om loggfilen. Fluentd hämtar varje post som skrivits till källan och skickar en händelse för den till Fluentds routningsmotor. Du måste ange en tagg här i det här direktivet. Taggen är en sträng som används som anvisningar för Fluentds interna routningsmotor för att korrelera olika direktiv.
I det här exemplet visas syslog-poster som samlats in och taggats för bearbetning av Operations Manager.
<source>
# Specifies input plugin. Tail is a fluentd input plugin - http://docs.fluentd.org/v0.12/articles/in_tail
type tail
# Specify the log file path. Supports wild cards.
path /var/log/syslog
# Recommended so that Fluentd will record the position it last read into this file.
pos_file /home/user1/fluent-test/demo_syslog.log.pos
# Used to correlate the directives.
tag scom.log.syslog
format /(?<message>.*)/
</source>
Matchning
Matchningsdirektivet definierar hur händelser som samlas in från källan ska bearbetas med matchande taggar. Endast händelser med en tagg som matchar mönstret skickas till utdatamålet. När flera mönster visas i en matchningstagg kan händelser matcha något av de angivna mönstren. Typparametern som anger vilket plugin-program som ska användas för dessa händelser.
I det här exemplet bearbetas händelser med taggar som matchar scom.log.** och scom.alert (** matchar noll eller flera taggdelar). Den anger out_scom plugin-programmet, vilket gör att händelserna kan samlas in av Operations Manager-hanteringspaketet.
<match scom.log.** scom.event>
# Output plugin to use
type out_scom
log_level trace
num_threads 5
# Size of the buffer chunk. If the top chunk exceeds this limit or the time limit flush_interval, a new empty chunk is pushed to the top of the
queue and bottom chunk is written out.
buffer_chunk_limit 5m
flush_interval 15s
# Specifies the buffer plugin to use.
buffer_type file
# Specifies the file path for buffer. Fluentd must have write access to this directory.
buffer_path /var/opt/microsoft/omsagent/scom/state/out_scom_common*.buffer
# If queue length exceeds the specified limit, events are rejected.
buffer_queue_limit 10
# Control the buffer behavior when the queue becomes full: exception, block, drop_oldest_chunk
buffer_queue_full_action drop_oldest_chunk
# Number of times Fluentd will attempt to write the chunk if it fails.
retry_limit 10
# If the bottom chunk fails to be written out, it will remain in the queue and Fluentd will retry after waiting retry_wait seconds
retry_wait 30s
# The retry wait time doubles each time until max_retry_wait.
max_retry_wait 9m
</match>
Anteckning
Om du vill inaktivera Server-autentisering på Linux-datorerna som använder Fluentd-kommunikation lägger du till en parameter enable_server_auth false i SCOM-plugin-programmet för Fluentd, till exempel följande:
<match scom.log.** scom.event>
type out_scom
max_retry_wait 9m
enable_server_auth false
</match>
Filtrera
Filterdirektivet har samma syntax som matchning, men tillåter mer komplex filtrering av vilka data som ska bearbetas. Insamlade händelser måste matcha kriterierna för alla filter som ska läggas till i utdata.
Det finns sex filterplugin-program för loggfilsövervakning som beskrivs här. Använd ett eller flera av dessa filter för att definiera de händelser som du vill samla in från loggfilen.
Enkel matchning: filter_scom_simple_match
Tar upp till 20 indatamönster. Skickar en händelse till Operations Manager när ett mönster matchas.
<filter tag>
type filter_scom_simple_match
regexp1 <key> <pattern>
event_id1 <event ID>
regexp2 <key> <pattern>
event_id2 <event ID>
.
.
.
regexp20 <key> <pattern>
event_id20 <event ID>
</filter>
Exklusiv matchning: filter_scom_excl_match
Tar två indatamönster. Skickar en händelse till Operations Manager när en enda post matchar mönster 1 men inte matchar mönster 2.
<filter tag>
type filter_scom_excl_match
regexp1 <key> <pattern1>
regexp2 <key> <pattern2>
event_id <event ID>
</filter>
Upprepad korrelation: filter_scom_repeated_cor
Tar tre indata: ett mönster, ett tidsintervall och många förekomster. När en matchning hittas för det första mönstret startar en timer. En händelse skickas till Operations Manager om mönstret matchas det angivna antalet gånger innan timern slutar.
<filter tag>
type filter_scom_repeated_cor
regexp <key> <pattern>
event_id <event ID>
time_interval <interval in seconds>
num_occurences <number of occurrences>
</filter>
Korrelerad matchning: filter_scom_cor_match
Tar tre indata: två mönster och ett tidsintervall. När en matchning hittas för det första mönstret startar en timer. En händelse skickas till Operations Manager om det finns en matchning för det andra mönstret innan timern slutar.
<filter tag>
type filter_scom_cor_match
regexp1 <key> <pattern1>
regexp2 <key> <pattern2>
event_id <event ID>
time_interval <interval in seconds>
</filter>
Exklusiv korrelation: filter_scom_excl_correlation
Tar tre indata: två mönster och ett tidsintervall. När en matchning hittas för det första mönstret startar en timer. En händelse skickas till Operations Manager om det inte finns någon matchning för det andra mönstret innan timern slutar.
<filter tag>
type filter_scom_excl_correlation
regexp1 <key> <pattern1>
regexp2 <key> <pattern2>
event_id <event ID>
time_interval <interval in seconds>
</filter>
Operations Manager-konverterare: filter_scom_converter
Skickar en händelse till Operations Manager för alla poster som den tar emot. Skickar det angivna händelse-ID:t och beskrivningen som en del av händelsen.
<filter tag>
type filter_scom_converter
event_id <event ID>
event_desc <event description>
</filter>
Kopiera konfigurationsfilen till agenten
Fluentd-konfigurationsfilen måste kopieras till /etc/opt/microsoft/omsagent/scom/conf/omsagent.d på alla Linux-datorer som du vill övervaka. Du måste också lägga till ett @include direktiv i huvudkonfigurationsfilen enligt beskrivningen ovan.
Skapa regler och övervakare
Linux MP tillhandahåller inte moduler för att samla in händelser från FluentD. Linux MP paketeras med Linux-agenten. Det är den flytande modulen i Linux-agenten och OMED-tjänsten på hanterings- och gatewayservern som ger funktioner för förbättrad övervakning av loggfiler.
Du måste skapa ett eget hanteringspaket med anpassade regler och övervakare som använder modulen Microsoft.Linux.OMED.EventDataSource, som samlar in händelserna från Fluentd.
I följande tabell visas parametrarna för Microsoft.Linux.OMED.EventDataSource.
Parameter | Typ | Description |
---|---|---|
ComputerName | Sträng | Krävs. Anger namnet på den Linux-dator som händelser ska läsas för. Parametern ComputerName skickas oftast till modulen med hjälp av $Target-notationen, även om den kan anges som valfri sträng. Den här modulen försöker läsa händelser som genereras av den angivna Linux-datorn. |
ManagedEntityId | Sträng | Krävs. Anger det hanterade entitets-ID:t för den övervakade entiteten. Parametern ManagedEntityId skickas oftast till modulen med hjälp av $Target\Id$. |
EventNumber | Integer | Valfritt. Anger händelsenumret för den händelse som ska hämtas. Om det här alternativet utelämnas returnerar modulen alla händelser som genererats för datorn och den hanterade entiteten. |
Översikt över konfiguration
Följande steg krävs för att aktivera övervakning av loggfiler på Linux-agenter. Vart och ett av dessa steg beskrivs ingående i följande avsnitt.
- Importera det senaste Linux-hanteringspaketet.
- Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
- Skapa fluentd-konfigurationsfilen för att samla in loggar.
- Kopiera konfigurationsfilen till Linux-agenter.
- Skapa regler och övervakare med hjälp av exempelhanteringspaketet för att samla in händelser från loggen och skapa aviseringar.
Installera den senaste versionen av Linux-agenten
Den senaste versionen av Linux-agenten stöder Fluentd, vilket krävs för förbättrad övervakning av loggfiler. Du kan hämta information och installationsprocessen för den nya agenten i Installera agenten på UNIX och Linux från kommandoraden.
Konfigurera övervakning av Linux-loggfiler
Linux-hanteringspaketpaketet har den senaste Operations Manager-agenten (med Fluentd). För att konfigurera övervakning av Linux-loggfiler bör användarna utföra följande:
- Importera det senaste Linux-hanteringspaketet med standardprocessen för att installera ett hanteringspaket.
- Installera den nya Linux-agenten på Linux-servrarna. Detta kan göras via identifieringsguiden eller manuellt.
- Aktivera OMED-tjänsten på varje hanteringsserver i resurspoolen som hanterar Linux-agenterna.
OMED-tjänsten samlar in händelser från Fluentd och konverterar dem till Operations Manager-händelser. Användare bör importera ett anpassat hanteringspaket som kan generera aviseringar baserat på de händelser som tas emot från Linux-servrarna.
Du aktiverar OMED-tjänsten antingen från driftkonsolen eller manuellt på hanteringsservern eller gateway-servern.
Från driftkonsolen
- Från driftkonsolen går du till Övervaka>operationsmanager-hanteringsserverns>>hanteringsservertillstånd.
- Välj hanteringsservern i tillståndsfönstret Hanteringsservrar .
- I fönstret Uppgifter väljer du Hälsotjänstaktiviteter>Aktivera System Center OMED-server.
Manuellt
- Välj Start. I rutan Starta sökning anger du services.msc och trycker sedan på Retur.
- Högerklicka på tjänsten System Center Operations Manager External DataSource Service i informationsfönstret och välj Egenskaper.
- På fliken Allmänt i Starttyp väljer du Automatiskt och sedan OK.
- Högerklicka på tjänsten i informationsfönstret och välj Starta.
Skapa FluentD-konfigurationsfil
Du konfigurerar Fluentd-åtgärden med en konfigurationsfil. För loggövervakning måste du skapa en konfigurationsfil som innehåller sådan information som källloggens filnamn och sökväg och filter för att definiera vilka data som ska samlas in.
Master Fluentd-konfigurationsfilen omsagent.conf finns i /etc/opt/microsoft/omsagent/scom/conf/. Du kan lägga till övervakningskonfigurationen för loggfiler direkt i den här filen, men du bör skapa en separat konfigurationsfil för att bättre hantera de olika inställningarna. Sedan använder du ett @include -direktiv i huvudfilen för att inkludera din anpassade fil.
Om du till exempel har skapat logmonitoring.conf i /etc/opt/microsoft/omsagent/scom/conf/omsagent.d lägger du till någon av följande rader i fluent.conf:
#Include all configuration files
@include omsagent.d/*.conf
eller
#include single configuration file
@include omsagent.d/logmonitoring.conf
Du kan få information om Fluentd-konfigurationsfiler i Fluentd Configuration-filsyntaxen. I följande avsnitt beskrivs inställningar i olika direktiv för konfigurationsfilen som är unika för övervakning av loggfiler. Var och en innehåller exempelinställningar som du kan klistra in i en konfigurationsfil och ändra för dina behov.
Det finns en fullständig exempelkonfigurationsfil för loggövervakning som du kan granska och utvärdera innan du skapar en egen.
Källa
Källdirektivet definierar källan till de data som du samlar in. Här definierar du information om loggfilen. Fluentd hämtar varje post som skrivits till källan och skickar en händelse för den till Fluentds routningsmotor. Du måste ange en tagg här i det här direktivet. Taggen är en sträng som används som anvisningar för Fluentds interna routningsmotor för att korrelera olika direktiv.
I det här exemplet visas syslog-poster som samlats in och taggats för bearbetning av Operations Manager.
<source>
# Specifies input plugin. Tail is a fluentd input plugin - http://docs.fluentd.org/v0.12/articles/in_tail
type tail
# Specify the log file path. Supports wild cards.
path /var/log/syslog
# Recommended so that Fluentd will record the position it last read into this file.
pos_file /home/user1/fluent-test/demo_syslog.log.pos
# Used to correlate the directives.
tag scom.log.syslog
format /(?<message>.*)/
</source>
Matchning
Matchningsdirektivet definierar hur händelser som samlas in från källan ska bearbetas med matchande taggar. Endast händelser med en tagg som matchar mönstret skickas till utdatamålet. När flera mönster visas i en matchningstagg kan händelser matcha något av de angivna mönstren. Typparametern som anger vilket plugin-program som ska användas för dessa händelser.
I det här exemplet bearbetas händelser med taggar som matchar scom.log.** och scom.alert (** matchar noll eller flera taggdelar). Den anger out_scom plugin-programmet, vilket gör att händelserna kan samlas in av Operations Manager-hanteringspaketet.
<match scom.log.** scom.event>
# Output plugin to use
type out_scom
log_level trace
num_threads 5
# Size of the buffer chunk. If the top chunk exceeds this limit or the time limit flush_interval, a new empty chunk is pushed to the top of the
queue and bottom chunk is written out.
buffer_chunk_limit 5m
flush_interval 15s
# Specifies the buffer plugin to use.
buffer_type file
# Specifies the file path for buffer. Fluentd must have write access to this directory.
buffer_path /var/opt/microsoft/omsagent/scom/state/out_scom_common*.buffer
# If queue length exceeds the specified limit, events are rejected.
buffer_queue_limit 10
# Control the buffer behavior when the queue becomes full: exception, block, drop_oldest_chunk
buffer_queue_full_action drop_oldest_chunk
# Number of times Fluentd will attempt to write the chunk if it fails.
retry_limit 10
# If the bottom chunk fails to be written out, it will remain in the queue and Fluentd will retry after waiting retry_wait seconds
retry_wait 30s
# The retry wait time doubles each time until max_retry_wait.
max_retry_wait 9m
</match>
Anteckning
Om du vill inaktivera Server-autentisering på Linux-datorerna som använder Fluentd-kommunikation lägger du till en parameter enable_server_auth false i SCOM-plugin-programmet för Fluentd, till exempel följande:
<match scom.log.** scom.event>
type out_scom
max_retry_wait 9m
enable_server_auth false
</match>
Filtrera
Filterdirektivet har samma syntax som matchning, men tillåter mer komplex filtrering av vilka data som ska bearbetas. Insamlade händelser måste matcha kriterierna för alla filter som ska läggas till i utdata.
Det finns sex filterplugin-program för loggfilsövervakning som beskrivs här. Använd ett eller flera av dessa filter för att definiera de händelser som du vill samla in från loggfilen.
Enkel matchning: filter_scom_simple_match
Tar upp till 20 indatamönster. Skickar en händelse till Operations Manager när ett mönster matchas.
<filter tag>
type filter_scom_simple_match
regexp1 <key> <pattern>
event_id1 <event ID>
regexp2 <key> <pattern>
event_id2 <event ID>
.
.
.
regexp20 <key> <pattern>
event_id20 <event ID>
</filter>
Exklusiv matchning: filter_scom_excl_match
Tar två indatamönster. Skickar en händelse till Operations Manager när en enda post matchar mönster 1 men inte matchar mönster 2.
<filter tag>
type filter_scom_excl_match
regexp1 <key> <pattern1>
regexp2 <key> <pattern2>
event_id <event ID>
</filter>
Upprepad korrelation: filter_scom_repeated_cor
Tar tre indata: ett mönster, ett tidsintervall och många förekomster. När en matchning hittas för det första mönstret startar en timer. En händelse skickas till Operations Manager om mönstret matchas det angivna antalet gånger innan timern slutar.
<filter tag>
type filter_scom_repeated_cor
regexp <key> <pattern>
event_id <event ID>
time_interval <interval in seconds>
num_occurences <number of occurrences>
</filter>
Korrelerad matchning: filter_scom_cor_match
Tar tre indata: två mönster och ett tidsintervall. När en matchning hittas för det första mönstret startar en timer. En händelse skickas till Operations Manager om det finns en matchning för det andra mönstret innan timern slutar.
<filter tag>
type filter_scom_cor_match
regexp1 <key> <pattern1>
regexp2 <key> <pattern2>
event_id <event ID>
time_interval <interval in seconds>
</filter>
Exklusiv korrelation: filter_scom_excl_correlation
Tar tre indata: två mönster och ett tidsintervall. När en matchning hittas för det första mönstret startar en timer. En händelse skickas till Operations Manager om det inte finns någon matchning för det andra mönstret innan timern slutar.
<filter tag>
type filter_scom_excl_correlation
regexp1 <key> <pattern1>
regexp2 <key> <pattern2>
event_id <event ID>
time_interval <interval in seconds>
</filter>
Operations Manager-konverterare: filter_scom_converter
Skickar en händelse till Operations Manager för alla poster som den tar emot. Skickar det angivna händelse-ID:t och beskrivningen som en del av händelsen.
<filter tag>
type filter_scom_converter
event_id <event ID>
event_desc <event description>
</filter>
Kopiera konfigurationsfilen till agenten
Fluentd-konfigurationsfilen måste kopieras till /etc/opt/microsoft/omsagent/scom/conf/omsagent.d på alla Linux-datorer som du vill övervaka. Du måste också lägga till ett @include direktiv i huvudkonfigurationsfilen enligt beskrivningen ovan.
Skapa regler och övervakare
Linux MP tillhandahåller inte moduler för att samla in händelser från FluentD. Linux MP paketeras med Linux-agenten. Det är den flytande modulen i Linux-agenten och OMED-tjänsten på hanterings- och gatewayservern som ger funktioner för förbättrad övervakning av loggfiler.
Du måste skapa ett eget hanteringspaket med anpassade regler och övervakare som använder modulen Microsoft.Linux.OMED.EventDataSource, som samlar in händelserna från Fluentd.
I följande tabell visas parametrarna för Microsoft.Linux.OMED.EventDataSource.
Parameter | Typ | Description |
---|---|---|
ComputerName | Sträng | Krävs. Anger namnet på den Linux-dator som händelser ska läsas för. Parametern ComputerName skickas oftast till modulen med hjälp av $Target-notationen, även om den kan anges som valfri sträng. Den här modulen försöker läsa händelser som genereras av den angivna Linux-datorn. |
ManagedEntityId | Sträng | Krävs. Anger det hanterade entitets-ID:t för den övervakade entiteten. Parametern ManagedEntityId skickas oftast till modulen med hjälp av $Target\Id$. |
EventNumber | Integer | Valfritt. Anger händelsenumret för den händelse som ska hämtas. Om det här alternativet utelämnas returnerar modulen alla händelser som genererats för datorn och den hanterade entiteten. |
Översikt över konfiguration
Övervakning av loggfiler kräver följande steg. Den detaljerade informationen finns i följande avsnitt:
- Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2019.
- Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
- Installera den senaste OMSAgent på varje Linux-dator som ska övervakas.
- Skapa fluentd-konfigurationsfilen för att samla in loggar.
- Kopiera konfigurationsfilen till Linux-agenter.
- Skapa regler och övervakare med hjälp av exempelhanteringspaketet för att samla in händelser från loggen och skapa aviseringar.
- Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2022.
- Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
- Installera den senaste OMSAgent på varje Linux-dator som ska övervakas.
- Skapa fluentd-konfigurationsfilen för att samla in loggar.
- Kopiera konfigurationsfilen till Linux-agenter.
- Skapa regler och övervakare med hjälp av exempelhanteringspaketet för att samla in händelser från loggen och skapa aviseringar.
Installera loggövervakningshanteringspaketet
Installera hanteringspaketet Microsoft.Linux.Log.Monitoring för att aktivera övervakning av Linux-loggfiler.
Anteckning
Om du har konfigurerat OMS-agenten och försöker avinstallera UNIX- och LINUX-agenten från -konsolen avinstalleras inte OMS-komponenten från agenten.
Konfigurera övervakning av Linux-loggfiler
Utför följande steg för att konfigurera övervakning av Linux-loggfiler:
Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2019 med standardprocessen för att installera ett hanteringspaket.
Installera den nya Linux-agenten på Linux-servrarna manuellt eller [med identifieringsguiden](/system-center/System Center Operations Manager/manage-deploy-crossplat-agent-console).
Installera den senaste OMSAgent på varje Linux-dator som du vill övervaka. Använd följande kommandon:
# Download latest OMS Agent from GitHub wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh # Run onboarding script sh onboard_agent.sh
Utför följande steg på Linux-agenten:
Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2022 med standardprocessen för att installera ett hanteringspaket.
Installera den nya Linux-agenten på Linux-servrarna manuellt eller [med identifieringsguiden](/system-center/System Center Operations Manager/manage-deploy-crossplat-agent-console).
Installera den senaste OMSAgent på varje Linux-dator som du vill övervaka. Använd följande kommandon:
# Download latest OMS Agent from GitHub wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh # Run onboarding script sh onboard_agent.sh
Utför följande steg på Linux-agenten:
Skapa mapparna i följande sökvägar med kommandona nedan:
# Create omsagent.d folder mkdir -p /etc/opt/microsoft/omsagent/scom/conf/omsagent.d # Create certs folder mkdir /etc/opt/microsoft/omsagent/scom/certs # Create log folder mkdir -p /var/opt/microsoft/omsagent/scom/log # Create run folder mkdir /var/opt/microsoft/omsagent/scom/run # Create state folder mkdir /var/opt/microsoft/omsagent/scom/state # Create tmp folder mkdir /var/opt/microsoft/omsagent/scom/tmp # Create fluent-logging folder (used for log file position file, this location is flexible) mkdir -p /home/omsagent/fluent-logging
Ange ägarskap för var och en av ovanstående mappar till
omsagent:omiusers
:# Change owner of System Center Operations Manager folder chown omsagent:omiusers /etc/opt/microsoft/omsagent/scom # Change owner of log folder chown omsagent:omiusers /var/opt/microsoft/omsagent/scom/log # Change owner of run folder chown omsagent:omiusers /var/opt/microsoft/omsagent/scom/run # Change owner of state folder chown omsagent:omiusers /var/opt/microsoft/omsagent/scom/state # Change owner of tmp folder chown omsagent:omiusers /var/opt/microsoft/omsagent/scom/tmp # Change owner of fluent-logging folder (used for log file position file, this location is flexible) chown omsagent:omiusers /home/omsagent/fluent-logging
Skapa omsagent- och omsconfig-filer:
# Create omsadmin.conf file touch /etc/opt/microsoft/omsagent/scom/conf/omsadmin.conf # Create omsagent.conf file touch /etc/opt/microsoft/omsagent/scom/conf/omsagent.conf
Ange ägarskap för var och en av ovanstående filer till
omsagent:omiusers
:# Change owner of omsadmin.conf file chown omsagent:omiusers /etc/opt/microsoft/omsagent/scom/conf/omsadmin.conf # Change owner of omsagent.conf file chown omsagent:omiusers /etc/opt/microsoft/omsagent/scom/conf/omsagent.conf
Redigera filen
/etc/opt/microsoft/omsagent/scom/conf/omsadmin.conf
och lägg till följande information när du har ändrat den markerade informationen.WORKSPACE_ID=scom System Center Operations Manager_ENDPOINT=https://<mark>\<MSFQDN\></mark>:8886 MONITORING_ID={274F8D7B-DBCA-8FC3-1451-8DCD55092156}
Starta om OMSAgent:
/opt/microsoft/omsagent/bin/service_control restart
Kontrollera statusen i omsagent-loggen:
tail -100 /var/opt/microsoft/omsagent/scom/log/omsagent.log
Aktivera OMED-tjänsten
Aktivera OMED-tjänsten på varje hanteringsserver i resurspoolen och hantera Linux-agenterna.
OMED-tjänsten samlar in händelser från Fluentd och konverterar dem till Operations Manager-händelser. Du importerar ett anpassat hanteringspaket som kan generera aviseringar baserat på de händelser som tas emot från Linux-servrarna.
Du kan aktivera OMED-tjänsten antingen från driftkonsolen eller manuellt på hanteringsservern eller gateway-servern.
- Från driftkonsolen går du till Övervakning operations>manager>hanteringsserverns>hanteringsservrar tillstånd.
- Välj hanteringsservern i tillståndet Hanteringsservrar.
- Från Uppgifter väljer du Hälsotjänstaktiviteter>Aktivera System Center OMED-server.
Lägg till OMED-brandväggsregel
För att aktivera omed-brandväggsregeln har du två alternativ, antingen lägger du till porten (TCP/8886) automatiskt via PowerShell eller manuellt.
Följ dessa steg för att automatiskt lägga till regel med PowerShell:
Med följande kommando kan du automatiskt lägga till brandväggsregeln:
Set-NetFirewallRule -DisplayName "System Center Operations Manager External DataSource Service" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 8886
Tilldela ett klientcertifikat för OMSAgent
Du har två alternativ när du tilldelar klientcertifikatet för OMSAgent.
- Länka till det signerade certifikatet från OMI-agenten.
- Generera ett klientcertifikat manuellt för OMS-agenten.
Välj den obligatoriska fliken för steg för att länka till det signerade certifikatet från OMI-agenten eller generera ett klientcertifikat manuellt från OMS-agenten:
Ange ägarskap för
omi.pem
filen ochomikey.pem
tillomsagent:omiusers
:# Change owner of System Center Operations Manager-cert.pem file chown omsagent:omiusers /etc/opt/microsoft/omsagent/scom/certs/scom-cert.pem # Change owner of System Center Operations Manager-key.pem file chown omsagent:omiusers /etc/opt/microsoft/omsagent/scom/certs/scom-key.pem
Kör följande kommando på Linux-datorn för att ange OMS-agentklientcertifikatet till OMI-certifikatet (Operations Manager Linux-agentcertifikat):
# Link file omi.pem to System Center Operations Manager-cert.pem ln -s /etc/opt/omi/ssl/omi.pem /etc/opt/microsoft/omsagent/scom/certs/scom-cert.pem # Link file omikey.pem to System Center Operations Manager-key.pem ln -s /etc/opt/omi/ssl/omikey.pem /etc/opt/microsoft/omsagent/scom/certs/scom-key.pem
Skapa fluentd-konfigurationsfil
Du konfigurerar Fluentd-åtgärden med hjälp av en konfigurationsfil. Om du vill använda loggövervakning måste du skapa en konfigurationsfil. Konfigurationsfilen innehåller information som källloggfilens namn, sökväg och filter för att definiera vilka data som ska samlas in.
Huvudkonfigurationsfilen Fluentd omsagent.conf finns i /etc/opt/microsoft/omsagent/scom/conf/
. Du kan lägga till loggfilsövervakningskonfiguration direkt i den här filen, men du bör skapa en separat konfigurationsfil för att bättre hantera de olika inställningarna. Sedan använder du ett @include direktiv i huvudfilen för att inkludera din anpassade fil.
Om du till exempel skapade logmonitoring.conf i /etc/opt/microsoft/omsagent/scom/conf/omsagent.d
lägger du till en av följande rader i filen omsagent.d :
# Include all configuration files
@include omsagent.d/*.conf
eller
# Include single configuration file
@include omsagent.d/logmonitoring.conf
Mer information om Fluentd-konfigurationsfiler finns i Syntax för Fluentd Configuration-filen.
I följande avsnitt beskrivs inställningar i olika direktiv för konfigurationsfilen som är unika för övervakning av loggfiler. Var och en innehåller exempelinställningar som du kan klistra in i en konfigurationsfil och ändra för dina behov.
Det finns en fullständig exempelkonfigurationsfil för loggövervakning som du kan granska och utvärdera innan du skapar en egen.
Källa
Källdirektivet definierar källan för de data som du samlar in, vilket är där du definierar information om loggfilen. Fluentd hämtar varje post som skrivits till källan och skickar en händelse till Fluentds routningsmotor. Ange en tagg här i det här direktivet. Taggen är en sträng som används som vägbeskrivning för Fluentds interna routningsmotor för att korrelera olika direktiv.
I följande exempel visas syslog-poster som samlats in och taggats för bearbetning av Operations Manager.
<source>
# Specifies input plugin. Tail is a fluentd input plugin - http://docs.fluentd.org/v0.12/articles/in\_tail
type tail
# Specify the log file path. Supports wild cards.
path /var/log/syslog
# Recommended so that Fluentd will record the position it last read into this file.
pos_file /home/user1/fluent-test/demo_syslog.log.pos
# Used to correlate the directives.
tag System Center Operations Manager.log.syslog
format /(?<message>.*)/
</source>
Filtrera
Filterdirektivet har samma syntax som Match, men tillåter mer komplex filtrering av vilka data som ska bearbetas. Insamlade händelser måste matcha kriterierna för alla filter som ska läggas till i utdata.
Det finns sex filter-plugin-program för loggfilsövervakning som beskrivs här. Använd ett eller flera av dessa filter för att definiera de händelser som du vill samla in från loggfilen.
- Enkel matchning: filter_System Center Operations Manager_simple_match
- Exklusiv matchning: filter_System Center Operations Manager_excl_match
- Upprepad korrelation: filter_System Center Operations Manager_repeated_cor
- Korrelerad matchning: filter_System Center Operations Manager_cor_match
- Exklusiv korrelation: filter_System Center Operations Manager_excl_correlation
- Operations Manager-konverterare: filter_System Center Operations Manager_converter
Välj den flik som krävs för att kopiera koden för respektive filter-plugin-program:
- Enkel matchning
- Exklusiv matchning
- Upprepad korrelation
- Korrelerad matchning
- Exklusiv korrelation
- Operations Manager-konverterare
Tar upp till 20 indatamönster. Skickar en händelse till Operations Manager när ett mönster matchas.
<filter tag>
type filter_System Center Operations Manager_simple_match
regexp1 <key> <pattern>
event_id1 <event ID>
regexp2 <key> <pattern>
event_id2 <event ID>
.
.
.
regexp20 <key> <pattern>
event_id20 <event ID>
</filter>
Matchning
Matchningsdirektivet definierar hur du bearbetar händelser som samlas in från källan med matchande taggar. Endast händelser med en tagg som matchar mönstret skickas till utdatamålet. När flera mönster visas i en matchningstagg kan händelser matcha något av de angivna mönstren. Typparametern anger vilken typ av plugin-program som ska användas för dessa händelser.
Det här exemplet bearbetar händelser med taggar som matchar System Center Operations Manager.log. ** och System Center Operations Manager.alert (** matchar noll eller flera taggdelar). Den anger plugin-programmet out_System Center Operations Manager , vilket gör att händelserna kan samlas in av Operations Manager-hanteringspaketet.
<match System Center Operations Manager.log.** System Center Operations Manager.event>
# Output plugin to use
type out_System Center Operations Manager
log_level trace
num_threads 5
# Size of the buffer chunk. If the top chunk exceeds this limit or the time limit flush_interval, a new empty chunk is pushed to the top of the
queue and bottom chunk is written out.
buffer_chunk_limit 5m
flush_interval 15s
# Specifies the buffer plugin to use.
buffer_type file
# Specifies the file path for buffer. Fluentd must have write access to this directory.
buffer_path /var/opt/microsoft/omsagent/scom/state/out_System Center Operations Manager_common*.buffer
# If queue length exceeds the specified limit, events are rejected.
buffer_queue_limit 10
# Control the buffer behavior when the queue becomes full: exception, block, drop_oldest_chunk
buffer_queue_full_action drop_oldest_chunk
# Number of times Fluentd will attempt to write the chunk if it fails.
retry_limit 10
# If the bottom chunk fails to be written out, it will remain in the queue and Fluentd will retry after waiting retry_wait seconds
retry_wait 30s
# The retry wait time doubles each time until max_retry_wait.
max_retry_wait 9m
</match>
Anteckning
Om du vill inaktivera serverautentisering på De Linux-datorer som använder Fluentd-kommunikation lägger du till en parameter enable_server_auth false i Operations Manager-plugin-programmet för Fluentd, till exempel följande:
<match System Center Operations Manager.log.** System Center Operations Manager.event>
type out_System Center Operations Manager
max_retry_wait 9m
enable_server_auth false
</match>
Kopiera konfigurationsfilen till agenten
Fluentd-konfigurationsfilen måste kopieras till /etc/opt/microsoft/omsagent/scom/conf/omsagent.d på alla Linux-datorer som du vill övervaka. Du måste också lägga till ett @include direktiv i huvudkonfigurationsfilen enligt beskrivningen ovan.
Starta om omsagent
Du kan köra följande kommando för att starta om omsagenten:
/opt/microsoft/omsagent/bin/service_control restart
Kontrollera status för System Center Operations Manager-arbetsytan
Kör följande kommando för att kontrollera System Center Operations Manager-arbetsytan på OMSAgent:
sh /opt/microsoft/omsagent/bin/omsadmin.sh -l
Anteckning
På hanteringsservern som kör OMED-tjänsten kontrollerar du att brandväggen på port 8886 är öppen och att certifikatarkivet för mellanliggande certifikatutfärdare endast innehåller mellanliggande certifikatutfärdare.
Händelselogg för System Center Operations Manager External DataSource Service
Händelseloggen för System Center OMED-tjänsten skapas bara när en händelse skickas till Omed-tjänsten (External DataSource Service) i System Center Operations Manager.
Skapa regler och övervakare
Linux-hanteringspaketet tillhandahåller inte moduler för att samla in händelser från FluentD. Linux-hanteringspaketet levereras med Linux-agenten. Det är den flytande modulen i Linux-agenten och OMED-tjänsten på hanterings- och gatewayservern som ger funktioner för förbättrad övervakning av loggfiler.
Du måste skapa ett eget hanteringspaket med anpassade regler och övervakare som använder modulen Microsoft.Linux.OMED.EventDataSource för att samla in händelserna från Fluentd. Tänk på att datornamnet i händelsen som skickas via System Center OMED-tjänstens händelselogg måste matcha namnet på datorn i vyn UNIX-/Linux-datorer. Om datornamnet inte matchar får du ingen avisering.
I följande tabell visas parametrarna för Microsoft.Linux.OMED.EventDataSource.
Parameter | Typ | Description |
---|---|---|
ComputerName | Sträng | Krävs. Anger namnet på den Linux-dator som händelser ska läsas för. Parametern ComputerName skickas oftast till modulen med hjälp av $Target notation, även om den kan anges som valfri sträng. Den här modulen försöker läsa händelser som genereras av den angivna Linux-datorn. |
ManagedEntityId | Sträng | Krävs. Anger det hanterade entitets-ID:t för den övervakade entiteten. Parametern ManagedEntityId skickas oftast till modulen med hjälp av $Target\Id$. |
EventNumber | Integer | Valfritt. Anger händelsenumret för händelsen som ska hämtas. Om det här alternativet utelämnas returnerar modulen alla händelser som genererats för datorn och den hanterade entiteten |
Nästa steg
Om du vill skapa en anpassad vy för att granska övervakningsdata från ditt anpassade loggfilhanteringspaket läser du Använda vyer i Operations Manager.
Mer information om hur du undersöker problem som identifieras av ditt anpassade loggfilhanteringspaket finns i Visa aktiva aviseringar och information.