Monitoraggio dei file di log di Linux in System Center Operations Manager

Importante

Questa versione di Operations Manager ha raggiunto la fine del supporto. È consigliabile eseguire l'aggiornamento a Operations Manager 2022.

Nota

System Center Operations Manager non supporta il monitoraggio del file di log basato su fluentD al ritiro dell'agente OMS che è previsto per agosto 2024.

System Center Operations Manager ora include funzionalità di monitoraggio dei file di log avanzate per i server Linux con la versione più recente dell'agente che usa Fluentd. Questo aggiornamento offre i miglioramenti seguenti rispetto al monitoraggio di file di log precedente:

  • Caratteri jolly nel nome e nel percorso del file di log.
  • Nuovi modelli di corrispondenza per la ricerca personalizzabile nel log, ad esempio corrispondenza semplice, esclusiva o correlata e correlazione ripetuta o esclusiva.
  • Supporto per i plug-in Fluentd generici pubblicati dalla community Fluentd.

Funzionamento di base

Il funzionamento di base del monitoraggio dei file di log in Linux include i passaggi seguenti:

  1. Il record viene scritto in un log in un agente Linux.
  2. Fluentd raccoglie il record e crea un evento in base alla corrispondenza del modello.
  3. L'evento viene inviato al servizio OMED nel server di gestione e connesso al registro eventi del servizio OMED di System Center nel server di gestione. Il registro eventi del servizio OMED di System Center viene creato solo quando un evento è stato inviato correttamente da un agente Fluentd)
  4. Le regole e i monitoraggi in un Management Pack personalizzato raccolgono gli eventi e creano gli avvisi in Operations Manager.

Panoramica della configurazione

I passaggi seguenti sono necessari per abilitare il monitoraggio dei file di log negli agenti Linux. Ogni passaggio viene descritto dettagliatamente nelle sezioni seguenti.

  1. Importare il Management Pack più recente di Linux.
  2. Installare la versione più recente dell'agente Linux in ogni computer Linux da monitorare.
  3. Creare un file di configurazione Fluentd per raccogliere i log.
  4. Copiare il file di configurazione negli agenti Linux.
  5. Creare regole e monitoraggi usando il Management Pack di esempio per raccogliere gli eventi dal log e creare avvisi.

Installare la versione più recente dell'agente Linux

La versione più recente dell'agente Linux supporta Fluentd, che è necessario per il monitoraggio avanzato dei file di log. Per informazioni dettagliate e istruzioni per il processo di installazione per il nuovo agente, vedere Installare l'agente in computer UNIX e Linux dalla riga di comando.

Configurare il monitoraggio di file di log di Linux

Il bundle del Management Pack di Linux include la versione più recente dell'agente di Operations Manager (con Fluentd). Per configurare il monitoraggio di file di log di Linux, è necessario eseguire le operazioni seguenti:

  1. Importare il Management Pack di Linux più recente tramite il processo standard per l'installazione di un Management Pack.
  2. Installare il nuovo agente nei server Linux, manualmente o tramite l'individuazione guidata.
  3. Abilitare il servizio OMED in ogni server di gestione nel pool di risorse che gestisce gli agenti Linux.

Il servizio OMED raccoglie gli eventi da Fluentd e li converte in eventi di Operations Manager. Gli utenti devono importare un Management Pack personalizzato, che può generare avvisi in base agli eventi ricevuti dai server Linux.

È possibile abilitare il servizio OMED dalla console operatore oppure manualmente nel server di gestione o nel server gateway.

Dalla console operatore

  1. Dalla Console operatore passare a Monitoraggio> dellostato dei server>di gestione server di gestionedi Operations Manager>.
  2. Selezionare il server di gestione nel riquadro Management Servers State (Stato dei server di gestione).
  3. Nel riquadro Tasks (Attività) selezionare Health Service Tasks>Enable System Center OMED Server (Attività del servizio integrità, Abilita server OMED di System Center).

Manualmente

  1. Selezionare Start, nella casella Start Search (Avvia ricerca ) immettere services.msc e quindi premere INVIO.
  2. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse sul servizio System Center Operations Manager External DataSource Service e selezionare Proprietà.
  3. Nella scheda Generale , in Tipo di avvio selezionare Automatico e selezionare OK.
  4. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse sul servizio e scegliere Avvia.

Creare un file di configurazione di FluentD

Le operazioni di Fluentd vengono configurate con un file di configurazione. Per il monitoraggio dei log, è necessario creare un file di configurazione che include informazioni quali il nome e il percorso del file di log di origine e i filtri per definire i dati da raccogliere.

Il file di configurazione Fluentd master omsagent.conf si trova in /etc/opt/microsoft/omsagent/scom/conf/. È possibile aggiungere la configurazione del monitoraggio dei file di log direttamente in questo file, ma è consigliabile creare un file di configurazione separato per gestire meglio le diverse impostazioni. È quindi possibile usare una direttiva @include nel file master per includere il file personalizzato.

Ad esempio, se è stato creato logmonitoring.conf in /etc/opt/microsoft/omsagent/scom/conf/omsagent.d, aggiungere una delle righe seguenti a fluent.conf:

  #Include all configuration files
  @include omsagent.d/*.conf

oppure

  #include single configuration file
  @include omsagent.d/logmonitoring.conf

Per informazioni dettagliate sui file di configurazione di Fluentd, vedere Fluentd Configuration file syntax (Sintassi del file di configurazione di Fluentd). Nelle sezioni seguenti vengono descritte le impostazioni di diverse direttive del file di configurazione specifiche per il monitoraggio dei file di log. Ogni sezione include impostazioni di esempio che è possibile incollare in un file di configurazione e modificare in base alle specifiche esigenze.

È disponibile un file di configurazione di esempio completo per il monitoraggio dei log, che è possibile esaminare prima di creare il proprio.

Source

La direttiva Source definisce l'origine dei dati da raccogliere. Questa è la posizione in cui si definiscono i dettagli del file di log. Fluentd preleva ogni record scritto nell'origine e invia un evento per tale record al motore di routing di Fluentd. È necessario specificare un tag in questa direttiva. Il tag è una stringa che viene usata come istruzioni per la correlazione di direttive diverse per il motore di routing interno di Fluentd.

Questo esempio mostra i record syslog raccolti e contrassegnati per l'elaborazione da 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>

Corrispondenza

La direttiva match definisce la modalità di elaborazione degli eventi raccolti dall'origine con tag corrispondenti. Solo gli eventi con un tag corrispondente al modello verranno inviati alla destinazione di output. Quando all'interno di un tag match sono elencati più modelli, gli eventi possono corrispondere a uno qualsiasi dei modelli elencati. Il parametro type che specifica quale plug-in usare per questi eventi.

In questo esempio vengono elaborati eventi con tag corrispondenti scom.log.** e scom.alert (** corrisponde a zero o più parti di tag). Specifica il plug-in out_scom , che consente di raccogliere gli eventi dal Management Pack di Operations Manager.

  <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>

Nota

Per disabilitare l'autenticazione server nei computer Linux che usano comunicazioni Fluentd, aggiungere un parametro enable_server_auth false al plug-in out_scom per Fluentd, come indicato di seguito:

  <match scom.log.** scom.event>
  type out_scom

  max_retry_wait 9m
  enable_server_auth false
  </match>

Filtra

La direttiva filtro ha la stessa sintassi della corrispondenza, ma consente un filtro più complesso dei dati da elaborare. Gli eventi raccolti devono corrispondere ai criteri di tutti i filtri da aggiungere all'output.

Di seguito vengono descritti sei plug-in di filtro per il monitoraggio dei file di log. Usare uno o più di questi filtri per definire gli eventi da raccogliere dal file di log.

Corrispondenza semplice: filter_scom_simple_match

Accetta fino a 20 modelli di input. Invia un evento a Operations Manager ogni volta che viene individuata una corrispondenza per un modello.

  <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>

Corrispondenza esclusiva: filter_scom_excl_match

Accetta due modelli di input. Invia un evento a Operations Manager quando un singolo record corrisponde al modello 1 ma non corrisponde al modello 2.

  <filter tag>
      type filter_scom_excl_match
      regexp1 <key> <pattern1>
      regexp2 <key> <pattern2>
      event_id <event ID>
  </filter>

Correlazione ripetuta: filter_scom_repeated_cor

Accetta tre input: un modello, un intervallo di tempo e molte occorrenze. Quando viene trovata una corrispondenza per il primo modello, viene avviato un timer. Viene inviato un evento a Operations Manager se viene individuata una corrispondenza per il numero di volte specificato prima della scadenza del timer.

  <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>

Corrispondenza correlata: filter_scom_cor_match

Accetta tre input: due modelli e un intervallo di tempo. Quando viene trovata una corrispondenza per il primo modello, viene avviato un timer. Un evento viene inviato a Operations Manager se è presente una corrispondenza per il secondo modello prima della fine del timer.

  <filter tag>
      type filter_scom_cor_match
      regexp1 <key> <pattern1>
      regexp2 <key> <pattern2>
      event_id <event ID>
      time_interval <interval in seconds>
  </filter>

Correlazione esclusiva: filter_scom_excl_correlation

Accetta tre input: due modelli e un intervallo di tempo. Quando viene trovata una corrispondenza per il primo modello, viene avviato un timer. Un evento viene inviato a Operations Manager se non esiste alcuna corrispondenza per il secondo modello prima del termine del timer.

  <filter tag>
      type filter_scom_excl_correlation
      regexp1 <key> <pattern1>
      regexp2 <key> <pattern2>
      event_id <event ID>
      time_interval <interval in seconds>
  </filter>

Convertitore di Operations Manager: filter_scom_converter

Invia un evento a Operations Manager per tutti i record ricevuti. Invia l'ID e la descrizione dell'evento specificato come parte dell'evento.

  <filter tag>
      type filter_scom_converter
      event_id <event ID>
      event_desc <event description>
  </filter>

Copiare il file di configurazione nell'agente

Il file di configurazione fluentd deve essere copiato in /etc/opt/microsoft/omsagent/scom/conf/omsagent.d in tutti i computer Linux che si vuole monitorare. È anche necessario aggiungere una direttiva @include nel file di configurazione master, come descritto in precedenza.

Creare regole e monitoraggi

Il Management Pack di Linux non fornisce moduli per raccogliere eventi da FluentD. Il Management Pack di Linux viene fornito in un bundle con l'agente Linux. Si tratta del modulo fluentd nell'agente Linux e nel servizio OMED nel server di gestione e gateway che offre le funzionalità per il monitoraggio avanzato dei file di log.

È necessario creare un Management Pack personalizzato con regole e monitoraggi personalizzati che usano il modulo Microsoft.Linux.OMED.EventDataSource, che raccoglie gli eventi da Fluentd.

Nella tabella seguente sono elencati i parametri di Microsoft.Linux.OMED.EventDataSource.

Parametro Tipo Descrizione
NomeComputer string Obbligatorio. Specifica il nome del computer Linux per cui devono essere letti gli eventi. Il parametro ComputerName viene in genere passato al modulo tramite la notazione $Target, anche se può essere specificato come qualsiasi stringa. Questo modulo tenta di leggere gli eventi generati dal computer Linux specificato.
ManagedEntityId string Obbligatorio. Specifica l'ID dell'entità gestita dell'entità monitorata. Il parametro ManagedEntityId viene in genere passato al modulo tramite $Target\Id$.
EventNumber Integer facoltativo. Indica il numero di eventi dell'evento da recuperare. Se questa opzione viene omessa, il modulo restituisce tutti gli eventi generati per il computer e l'entità gestita.

Panoramica della configurazione

I passaggi seguenti sono necessari per abilitare il monitoraggio dei file di log negli agenti Linux. Ogni passaggio viene descritto dettagliatamente nelle sezioni seguenti.

  1. Importare il Management Pack più recente di Linux.
  2. Installare la versione più recente dell'agente Linux in ogni computer Linux da monitorare.
  3. Creare un file di configurazione Fluentd per raccogliere i log.
  4. Copiare il file di configurazione negli agenti Linux.
  5. Creare regole e monitoraggi usando il Management Pack di esempio per raccogliere gli eventi dal log e creare avvisi.

Installare la versione più recente dell'agente Linux

La versione più recente dell'agente Linux supporta Fluentd, che è necessario per il monitoraggio avanzato dei file di log. Per informazioni dettagliate e istruzioni per il processo di installazione per il nuovo agente, vedere Installare l'agente in computer UNIX e Linux dalla riga di comando.

Configurare il monitoraggio di file di log di Linux

Il bundle del Management Pack di Linux include la versione più recente dell'agente di Operations Manager (con Fluentd). Per configurare il monitoraggio di file di log di Linux, è necessario eseguire le operazioni seguenti:

  1. Importare il Management Pack di Linux più recente tramite il processo standard per l'installazione di un Management Pack.
  2. Installare il nuovo agente nei server Linux, manualmente o tramite l'individuazione guidata.
  3. Abilitare il servizio OMED in ogni server di gestione nel pool di risorse che gestisce gli agenti Linux.

Il servizio OMED raccoglie gli eventi da Fluentd e li converte in eventi di Operations Manager. Gli utenti devono importare un Management Pack personalizzato, che può generare avvisi in base agli eventi ricevuti dai server Linux.

È possibile abilitare il servizio OMED dalla console operatore oppure manualmente nel server di gestione o nel server gateway.

Dalla console operatore

  1. Dalla Console operatore passare a Monitoraggio dello>stato dei server di gestione delserver> di gestione diOperations Manager>.
  2. Selezionare il server di gestione nel riquadro Management Servers State (Stato dei server di gestione).
  3. Nel riquadro Tasks (Attività) selezionare Health Service Tasks>Enable System Center OMED Server (Attività del servizio integrità, Abilita server OMED di System Center).

Manualmente

  1. Selezionare Start, nella casella Avvia ricerca immettere services.msc e quindi premere INVIO.
  2. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse sul servizio System Center Operations Manager External DataSource Service e scegliere Proprietà.
  3. Nella scheda Generale , in Tipo di avvio selezionare Automatico e selezionare OK.
  4. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse sul servizio e scegliere Avvia.

Creare un file di configurazione di FluentD

Le operazioni di Fluentd vengono configurate con un file di configurazione. Per il monitoraggio dei log, è necessario creare un file di configurazione che include informazioni quali il nome e il percorso del file di log di origine e i filtri per definire i dati da raccogliere.

Il file di configurazione Fluentd master omsagent.conf si trova in /etc/opt/microsoft/omsagent/scom/conf/. È possibile aggiungere la configurazione del monitoraggio dei file di log direttamente in questo file, ma è consigliabile creare un file di configurazione separato per gestire meglio le diverse impostazioni. È quindi possibile usare una direttiva @include nel file master per includere il file personalizzato.

Ad esempio, se è stato creato logmonitoring.conf in /etc/opt/microsoft/omsagent/scom/conf/omsagent.d, aggiungere una delle righe seguenti a fluent.conf:

  #Include all configuration files
  @include omsagent.d/*.conf

oppure

  #include single configuration file
  @include omsagent.d/logmonitoring.conf

Per informazioni dettagliate sui file di configurazione di Fluentd, vedere Fluentd Configuration file syntax (Sintassi del file di configurazione di Fluentd). Nelle sezioni seguenti vengono descritte le impostazioni di diverse direttive del file di configurazione specifiche per il monitoraggio dei file di log. Ogni sezione include impostazioni di esempio che è possibile incollare in un file di configurazione e modificare in base alle specifiche esigenze.

È disponibile un file di configurazione di esempio completo per il monitoraggio dei log, che è possibile esaminare prima di creare il proprio.

Source

La direttiva Source definisce l'origine dei dati da raccogliere. Questa è la posizione in cui si definiscono i dettagli del file di log. Fluentd preleva ogni record scritto nell'origine e invia un evento per tale record al motore di routing di Fluentd. È necessario specificare un tag in questa direttiva. Il tag è una stringa che viene usata come istruzioni per la correlazione di direttive diverse per il motore di routing interno di Fluentd.

Questo esempio mostra i record syslog raccolti e contrassegnati per l'elaborazione da 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>

Corrispondenza

La direttiva match definisce la modalità di elaborazione degli eventi raccolti dall'origine con tag corrispondenti. Solo gli eventi con un tag corrispondente al modello verranno inviati alla destinazione di output. Quando all'interno di un tag match sono elencati più modelli, gli eventi possono corrispondere a uno qualsiasi dei modelli elencati. Il parametro type che specifica quale plug-in usare per questi eventi.

In questo esempio vengono elaborati eventi con tag corrispondenti scom.log.** e scom.alert (** corrisponde a zero o più parti di tag). Specifica il plug-in out_scom , che consente di raccogliere gli eventi dal Management Pack di Operations Manager.

  <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>

Nota

Per disabilitare l'autenticazione server nei computer Linux che usano comunicazioni Fluentd, aggiungere un parametro enable_server_auth false al plug-in out_scom per Fluentd, come indicato di seguito:

  <match scom.log.** scom.event>
  type out_scom

  max_retry_wait 9m
  enable_server_auth false
  </match>

Filtra

La direttiva di filtro ha la stessa sintassi della corrispondenza , ma consente un filtro più complesso dei dati da elaborare. Gli eventi raccolti devono corrispondere ai criteri di tutti i filtri da aggiungere all'output.

Di seguito vengono descritti sei plug-in di filtro per il monitoraggio dei file di log. Usare uno o più di questi filtri per definire gli eventi da raccogliere dal file di log.

Corrispondenza semplice: filter_scom_simple_match

Accetta fino a 20 modelli di input. Invia un evento a Operations Manager ogni volta che viene individuata una corrispondenza per un modello.

  <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>

Corrispondenza esclusiva: filter_scom_excl_match

Accetta due modelli di input. Invia un evento a Operations Manager quando un singolo record corrisponde al modello 1, ma non corrisponde al modello 2.

  <filter tag>
      type filter_scom_excl_match
      regexp1 <key> <pattern1>
      regexp2 <key> <pattern2>
      event_id <event ID>
  </filter>

Correlazione ripetuta: filter_scom_repeated_cor

Accetta tre input: un modello, un intervallo di tempo e molte occorrenze. Quando viene trovata una corrispondenza per il primo modello, viene avviato un timer. Viene inviato un evento a Operations Manager se viene individuata una corrispondenza per il numero di volte specificato prima della scadenza del timer.

  <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>

Corrispondenza correlata: filter_scom_cor_match

Accetta tre input: due modelli e un intervallo di tempo. Quando viene trovata una corrispondenza per il primo modello, viene avviato un timer. Un evento viene inviato a Operations Manager se è presente una corrispondenza per il secondo modello prima che il timer termini.

  <filter tag>
      type filter_scom_cor_match
      regexp1 <key> <pattern1>
      regexp2 <key> <pattern2>
      event_id <event ID>
      time_interval <interval in seconds>
  </filter>

Correlazione esclusiva: filter_scom_excl_correlation

Accetta tre input: due modelli e un intervallo di tempo. Quando viene trovata una corrispondenza per il primo modello, viene avviato un timer. Un evento viene inviato a Operations Manager se non esiste alcuna corrispondenza per il secondo modello prima che il timer termini.

  <filter tag>
      type filter_scom_excl_correlation
      regexp1 <key> <pattern1>
      regexp2 <key> <pattern2>
      event_id <event ID>
      time_interval <interval in seconds>
  </filter>

Convertitore di Operations Manager: filter_scom_converter

Invia un evento a Operations Manager per tutti i record ricevuti. Invia l'ID e la descrizione dell'evento specificato come parte dell'evento.

  <filter tag>
      type filter_scom_converter
      event_id <event ID>
      event_desc <event description>
  </filter>

Copiare il file di configurazione nell'agente

Il file di configurazione fluentd deve essere copiato in /etc/opt/microsoft/omsagent/scom/conf/omsagent.d in tutti i computer Linux che si vuole monitorare. È anche necessario aggiungere una direttiva @include nel file di configurazione master, come descritto in precedenza.

Creare regole e monitoraggi

Il Management Pack di Linux non fornisce moduli per raccogliere eventi da FluentD. Il Management Pack di Linux viene fornito in un bundle con l'agente Linux. Si tratta del modulo fluentd nell'agente Linux e nel servizio OMED nel server di gestione e gateway che offre le funzionalità per il monitoraggio avanzato dei file di log.

È necessario creare un Management Pack personalizzato con regole e monitoraggi personalizzati che usano il modulo Microsoft.Linux.OMED.EventDataSource, che raccoglie gli eventi da Fluentd.

Nella tabella seguente sono elencati i parametri di Microsoft.Linux.OMED.EventDataSource.

Parametro Tipo Descrizione
NomeComputer string Obbligatorio. Specifica il nome del computer Linux per cui devono essere letti gli eventi. Il parametro ComputerName viene in genere passato al modulo tramite la notazione $Target, anche se può essere specificato come qualsiasi stringa. Questo modulo tenta di leggere gli eventi generati dal computer Linux specificato.
ManagedEntityId string Obbligatorio. Specifica l'ID dell'entità gestita dell'entità monitorata. Il parametro ManagedEntityId viene in genere passato al modulo tramite $Target\Id$.
EventNumber Integer facoltativo. Indica il numero di eventi dell'evento da recuperare. Se questa opzione viene omessa, il modulo restituisce tutti gli eventi generati per il computer e l'entità gestita.

Panoramica della configurazione

Il monitoraggio dei file di log richiede i passaggi seguenti. Le informazioni dettagliate sono disponibili nelle sezioni seguenti:

  1. Importare il Management Pack di System Center Operations Manager 2019 Linux più recente.
  2. Installare la versione più recente dell'agente Linux in ogni computer Linux da monitorare.
  3. Installare omsAgent più recente in ogni computer Linux da monitorare.
  4. Creare un file di configurazione Fluentd per raccogliere i log.
  5. Copiare il file di configurazione negli agenti Linux.
  6. Creare regole e monitoraggi usando il Management Pack di esempio per raccogliere gli eventi dal log e creare avvisi.
  1. Importare il Management Pack di System Center Operations Manager 2022 Linux più recente.
  2. Installare la versione più recente dell'agente Linux in ogni computer Linux da monitorare.
  3. Installare omsAgent più recente in ogni computer Linux da monitorare.
  4. Creare un file di configurazione Fluentd per raccogliere i log.
  5. Copiare il file di configurazione negli agenti Linux.
  6. Creare regole e monitoraggi usando il Management Pack di esempio per raccogliere gli eventi dal log e creare avvisi.

Installare il Management Pack di monitoraggio dei log

Installare il Management Pack Microsoft.Linux.Log.Monitoring per abilitare il monitoraggio dei file di log linux.

Nota

Se l'agente OMS è configurato e si tenta di disinstallare l'agente UNIX e LINUX dalla console, il componente OMS non verrà disinstallato dall'agente.

Configurare il monitoraggio dei file di log di Linux

Per configurare il monitoraggio dei file di log di Linux, seguire questa procedura:

  1. Importare il Management Pack di System Center Operations Manager 2019 Linux più recente usando il processo standard per l'installazione di un Management Pack.

  2. Installare il nuovo agente Linux nei server Linux manualmente o tramite [tramite individuazione guidata](/system-center/System Center Operations Manager/manage-deploy-crossplat-agent-console).

  3. Installare la versione più recente di OMSAgent in ogni computer Linux che si vuole monitorare. Usare il seguente comando:

    # 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
    

    Seguire questa procedura nell'agente Linux:

  1. Importare il Management Pack di System Center Operations Manager 2022 Linux più recente usando il processo standard per l'installazione di un Management Pack.

  2. Installare il nuovo agente Linux nei server Linux manualmente o tramite [tramite individuazione guidata](/system-center/System Center Operations Manager/manage-deploy-crossplat-agent-console).

  3. Installare la versione più recente di OMSAgent in ogni computer Linux che si vuole monitorare. Usare il seguente comando:

    # 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
    

    Seguire questa procedura nell'agente Linux:

  1. Creare le cartelle nei percorsi seguenti con i comandi seguenti:

    # 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. Impostare la proprietà su ognuna delle cartelle precedenti su 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
    

    Screenshot del monitoraggio dei file di log.

  3. Creare file omsagent e omsconfig:

    # 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. Impostare la proprietà su ognuno dei file precedenti su 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. Modificare il file /etc/opt/microsoft/omsagent/scom/conf/omsadmin.confe aggiungere le informazioni seguenti dopo aver modificato le informazioni evidenziate.

    WORKSPACE_ID=scom
    System Center Operations Manager_ENDPOINT=https://<mark>\<MSFQDN\></mark>:8886
    MONITORING_ID={274F8D7B-DBCA-8FC3-1451-8DCD55092156}
    
  6. Riavviare OMSAgent:

    /opt/microsoft/omsagent/bin/service_control restart
    
  7. Verificare lo stato nel log omsagent:

    tail -100 /var/opt/microsoft/omsagent/scom/log/omsagent.log
    

Abilitare il servizio OMED

Abilitare il servizio OMED in ogni server di gestione nel pool di risorse, gestendo gli agenti Linux.

Il servizio OMED raccoglie gli eventi da Fluentd e li converte in eventi di Operations Manager. Si importa un Management Pack personalizzato, che può generare avvisi in base agli eventi ricevuti dai server Linux.

È possibile abilitare il servizio OMED dalla Console operatore o manualmente nel server di gestione o nel server gateway.

  1. Dalla Console operatore passare a Monitoraggio dello>stato dei server di gestione del server> di gestione diOperations Manager>.
  2. Selezionare il server di gestione nello stato Server di gestione.
  3. In Attività selezionare Attività >del servizio integritàAbilita server OMED di System Center.

Aggiungere una regola del firewall OMED

Per abilitare la regola del firewall OMED sono disponibili due opzioni, aggiungere automaticamente la porta (TCP/8886) tramite PowerShell o manualmente.

Seguire questa procedura per aggiungere automaticamente una regola con PowerShell:

Il comando seguente consente di aggiungere automaticamente la regola del firewall:

Set-NetFirewallRule -DisplayName "System Center Operations Manager External DataSource Service" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 8886

Assegnare un certificato client per OMSAgent

Sono disponibili due opzioni quando si assegna il certificato client per OMSAgent.

  1. Collegamento al certificato firmato dall'agente OMI.
  2. Generare manualmente un certificato client per l'agente OMS.

Selezionare la scheda necessaria per i passaggi da collegare al certificato firmato dall'agente OMI o generare manualmente un certificato client dall'agente OMS:

  1. Impostare la proprietà sul omi.pem file e omikey.pem su 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. Eseguire il comando seguente nel computer Linux per impostare il certificato client dell'agente OMS sul certificato OMI (certificato dell'agente Linux di Operations Manager):

    # 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
    

Creare un file di configurazione Fluentd

Configurare l'operazione Fluentd usando un file di configurazione. Per utilizzare il monitoraggio dei log, è necessario creare un file di configurazione. Il file di configurazione include informazioni quali il nome del file di log di origine, il percorso e i filtri per definire i dati da raccogliere.

Il file di configurazione master Fluentd omsagent.conf si trova in /etc/opt/microsoft/omsagent/scom/conf/. È possibile aggiungere la configurazione di monitoraggio dei file di log direttamente a questo file, ma è consigliabile creare un file di configurazione separato per gestire meglio le diverse impostazioni. È quindi possibile usare una direttiva @include nel file master per includere il file personalizzato.

Ad esempio, se è stato creato logmonitoring.conf in /etc/opt/microsoft/omsagent/scom/conf/omsagent.d, aggiungere una delle righe seguenti al file omsagent.d :

# Include all configuration files
@include omsagent.d/*.conf

oppure

# Include single configuration file
@include omsagent.d/logmonitoring.conf

Per altre informazioni sui file di configurazione Fluentd, vedere sintassi dei file di configurazione Fluentd.

Le sezioni seguenti descrivono le impostazioni in direttive diverse del file di configurazione univoche per il monitoraggio dei file di log. Ogni sezione include impostazioni di esempio che è possibile incollare in un file di configurazione e modificare in base alle specifiche esigenze.

È disponibile un file di configurazione di esempio completo per il monitoraggio dei log, che è possibile esaminare prima di creare il proprio.

Source

La direttiva Source definisce l'origine dei dati raccolti, dove si definiscono i dettagli del file di log. Fluentd preleva ogni record scritto nell'origine e invia un evento per tale record al motore di routing di Fluentd. Specificare un tag qui in questa direttiva. Il tag è una stringa usata come indicazioni per il motore di routing interno di Fluentd per correlare direttive diverse.

L'esempio seguente mostra i record syslog raccolti e contrassegnati per l'elaborazione da parte di 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>

Filtra

La direttiva di filtro ha la stessa sintassi di Match , ma consente un filtro più complesso dei dati da elaborare. Gli eventi raccolti devono corrispondere ai criteri di tutti i filtri da aggiungere all'output.

Di seguito vengono descritti sei plug-in di filtro per il monitoraggio dei file di log. Usare uno o più di questi filtri per definire gli eventi da raccogliere dal file di log.

  • Corrispondenza semplice: filter_System Center Operations Manager_simple_match
  • Corrispondenza esclusiva: Manager_excl_match operations di filter_System Center
  • Correlazione ripetuta: filter_System Center Operations Manager_repeated_cor
  • Corrispondenza correlata: filter_System Center Operations Manager_cor_match
  • Correlazione esclusiva: filter_System Center Operations Manager_excl_correlation
  • Convertitore di Operations Manager: filter_System Center Operations Manager_converter

Selezionare la scheda necessaria per copiare il codice per il rispettivo plug-in di filtro:

Accetta fino a 20 modelli di input. Invia un evento a Operations Manager ogni volta che viene individuata una corrispondenza per un modello.

<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>

Corrispondenza

La direttiva match definisce la modalità di elaborazione degli eventi raccolti dall'origine con tag corrispondenti. Solo gli eventi con un tag corrispondente al modello vengono inviati alla destinazione di output. Quando all'interno di un tag match sono elencati più modelli, gli eventi possono corrispondere a uno qualsiasi dei modelli elencati. Il parametro type specifica il tipo di plug-in da usare per questi eventi.

Questo esempio elabora gli eventi con tag corrispondenti a System Center Operations Manager.log. ** e System Center Operations Manager.alert (** corrisponde a zero o più parti di tag). Specifica il plug-in out_System Center Operations Manager , che consente di raccogliere gli eventi dal Management Pack di Operations Manager.

<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>

Nota

Per disabilitare l'autenticazione server nei computer Linux che usano la comunicazione Fluentd, aggiungere un parametro enable_server_auth false al plug-in Operations Manager per Fluentd, ad esempio:

<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>

Copiare il file di configurazione nell'agente

Il file di configurazione Fluentd deve essere copiato in /etc/opt/microsoft/omsagent/scom/conf/omsagent.d in tutti i computer Linux da monitorare. È anche necessario aggiungere una direttiva @include nel file di configurazione master, come descritto in precedenza.

Riavviare omsagent

È possibile eseguire il comando seguente per riavviare omsagent:

/opt/microsoft/omsagent/bin/service_control restart

Controllare lo stato dell'area di lavoro di System Center Operations Manager

Eseguire il comando seguente per controllare l'area di lavoro di System Center Operations Manager in OMSAgent:

sh /opt/microsoft/omsagent/bin/omsadmin.sh -l

Nota

Nel server di gestione che esegue il servizio OMED verificare che il firewall sulla porta 8886 sia aperto e che l'archivio certificati delle autorità di certificazione intermedie contenga solo autorità di certificazione intermedie.

Registro eventi per System Center Operations Manager External DataSource Service

Il registro eventi del servizio OMED di System Center viene creato solo quando è presente un evento inviato correttamente al servizio OMED (External DataSource Service) di System Center Operations Manager.

Creare regole e monitoraggi

Il Management Pack linux non fornisce moduli per raccogliere eventi da FluentD, il Management Pack linux viene in bundle con l'agente Linux. Si tratta del modulo fluentd nell'agente Linux e nel servizio OMED nel server di gestione e gateway che offre le funzionalità per il monitoraggio avanzato dei file di log.

È necessario creare un Management Pack personalizzato con regole e monitoraggi personalizzati che usano il modulo Microsoft.Linux.OMED.EventDataSource per raccogliere gli eventi da Fluentd. Tenere presente che il nome del computer nell'evento inviato tramite il registro eventi del servizio OMED di System Center deve corrispondere al nome del computer nella visualizzazione Computer UNIX/Linux. Se il nome del computer non corrisponde, non si riceverà alcun avviso.

Nella tabella seguente sono elencati i parametri di Microsoft.Linux.OMED.EventDataSource.

Parametro Tipo Descrizione
NomeComputer string Obbligatorio. Specifica il nome del computer Linux per cui devono essere letti gli eventi. Il parametro ComputerName viene in genere passato al modulo tramite la notazione $Target, anche se può essere specificato come qualsiasi stringa. Questo modulo tenta di leggere gli eventi generati dal computer Linux specificato.
ManagedEntityId string Obbligatorio. Specifica l'ID dell'entità gestita dell'entità monitorata. Il parametro ManagedEntityId viene in genere passato al modulo tramite $Target\Id$.
EventNumber Integer facoltativo. Indica il numero di eventi dell'evento da recuperare. Se questa opzione viene omessa, il modulo restituisce tutti gli eventi generati per il computer e l'entità gestita.

Passaggi successivi