Dela via


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:

  1. Posten skrivs till en logg på en Linux-agent.
  2. Fluentd samlar in posten och skapar en händelse vid mönstermatchning.
  3. 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)
  4. 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.

  1. Importera det senaste Linux-hanteringspaketet.
  2. Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
  3. Skapa fluentd-konfigurationsfilen för att samla in loggar.
  4. Kopiera konfigurationsfilen till Linux-agenter.
  5. 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:

  1. Importera det senaste Linux-hanteringspaketet med standardprocessen för att installera ett hanteringspaket.
  2. Installera den nya Linux-agenten på Linux-servrarna. Detta kan göras via identifieringsguiden eller manuellt.
  3. 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

  1. Från driftkonsolen går du till Övervaka>operationsmanager-hanteringsserverns>>hanteringsservertillstånd.
  2. Välj hanteringsservern i tillståndsfönstret Hanteringsservrar .
  3. I fönstret Uppgifter väljer du Hälsotjänstaktiviteter>Aktivera System Center OMED-server.

Manuellt

  1. Välj Start. I rutan Starta sökning anger du services.msc och trycker sedan på Retur.
  2. Högerklicka på tjänsten System Center Operations Manager External DataSource Service i informationsfönstret och välj Egenskaper.
  3. På fliken Allmänt i Starttyp väljer du Automatiskt och sedan OK.
  4. 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.

  1. Importera det senaste Linux-hanteringspaketet.
  2. Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
  3. Skapa fluentd-konfigurationsfilen för att samla in loggar.
  4. Kopiera konfigurationsfilen till Linux-agenter.
  5. 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:

  1. Importera det senaste Linux-hanteringspaketet med standardprocessen för att installera ett hanteringspaket.
  2. Installera den nya Linux-agenten på Linux-servrarna. Detta kan göras via identifieringsguiden eller manuellt.
  3. 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

  1. Från driftkonsolen går du till Övervaka>operationsmanager-hanteringsserverns>>hanteringsservertillstånd.
  2. Välj hanteringsservern i tillståndsfönstret Hanteringsservrar .
  3. I fönstret Uppgifter väljer du Hälsotjänstaktiviteter>Aktivera System Center OMED-server.

Manuellt

  1. Välj Start. I rutan Starta sökning anger du services.msc och trycker sedan på Retur.
  2. Högerklicka på tjänsten System Center Operations Manager External DataSource Service i informationsfönstret och välj Egenskaper.
  3. På fliken Allmänt i Starttyp väljer du Automatiskt och sedan OK.
  4. 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:

  1. Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2019.
  2. Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
  3. Installera den senaste OMSAgent på varje Linux-dator som ska övervakas.
  4. Skapa fluentd-konfigurationsfilen för att samla in loggar.
  5. Kopiera konfigurationsfilen till Linux-agenter.
  6. Skapa regler och övervakare med hjälp av exempelhanteringspaketet för att samla in händelser från loggen och skapa aviseringar.
  1. Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2022.
  2. Installera den senaste versionen av Linux-agenten på varje Linux-dator som ska övervakas.
  3. Installera den senaste OMSAgent på varje Linux-dator som ska övervakas.
  4. Skapa fluentd-konfigurationsfilen för att samla in loggar.
  5. Kopiera konfigurationsfilen till Linux-agenter.
  6. 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:

  1. Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2019 med standardprocessen för att installera ett hanteringspaket.

  2. Installera den nya Linux-agenten på Linux-servrarna manuellt eller [med identifieringsguiden](/system-center/System Center Operations Manager/manage-deploy-crossplat-agent-console).

  3. 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:

  1. Importera det senaste Linux-hanteringspaketet för System Center Operations Manager 2022 med standardprocessen för att installera ett hanteringspaket.

  2. Installera den nya Linux-agenten på Linux-servrarna manuellt eller [med identifieringsguiden](/system-center/System Center Operations Manager/manage-deploy-crossplat-agent-console).

  3. 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:

  1. 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
    
  2. 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
    

    Skärmbild av övervakning av loggfiler.

  3. 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
    
  4. 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
    
  5. Redigera filen /etc/opt/microsoft/omsagent/scom/conf/omsadmin.confoch 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}
    
  6. Starta om OMSAgent:

    /opt/microsoft/omsagent/bin/service_control restart
    
  7. 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.

  1. Från driftkonsolen går du till Övervakning operations>manager>hanteringsserverns>hanteringsservrar tillstånd.
  2. Välj hanteringsservern i tillståndet Hanteringsservrar.
  3. 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.

  1. Länka till det signerade certifikatet från OMI-agenten.
  2. 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:

  1. Ange ägarskap för omi.pem filen och omikey.pem till omsagent: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
    
  2. 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.dlä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:

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