Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Syslog è un protocollo di registrazione di eventi comunemente usato in Linux. È possibile usare il daemon Syslog integrato in dispositivi e appliance Linux per raccogliere gli eventi locali dei tipi specificati. Le applicazioni inviano messaggi che possono essere archiviati nel computer locale o recapitati a un agente di raccolta di Syslog. Raccogliere eventi Syslog dalle macchine virtuali usando una regola di raccolta dati (DCR) con un'origine dati Syslog Linux .
Suggerimento
Per raccogliere dati da dispositivi che non consentono l'installazione locale dell'agente di Monitoraggio di Azure, configurare un server d'inoltro dei log basato su Linux dedicato come descritto in Inoltrare i dati syslog a un'area di lavoro Log Analytics con Microsoft Sentinel usando l'agente di Monitoraggio di Azure.
I dettagli sulla creazione di DCR sono disponibili in Raccogliere dati dal client di macchina virtuale con Monitoraggio di Azure. Questo articolo fornisce dettagli aggiuntivi per il tipo di origine dati Syslog Linux.
Annotazioni
Per usare direttamente la definizione DCR o distribuire con altri metodi, ad esempio i modelli ARM, consulta gli esempi di regole di raccolta dati in Monitoraggio di Azure.
Creare il DCR
Crea il DCR usando il processo in Raccogliere dati dal client di macchine virtuali con Azure Monitor.
Configurare l'origine dati Syslog
Nella scheda Collect and deliver (Raccogli e recapita ) di DCR selezionare Linux Syslog nell'elenco a discesa Tipo di origine dati .
Selezionare un livello di log minimo per ogni struttura o NONE per non raccogliere eventi per tale struttura. È possibile configurare più strutture contemporaneamente selezionando la casella di controllo e quindi selezionando un livello di log in Impostare il livello di log minimo per le strutture selezionate.
Tutti i log con il livello di gravità selezionato e superiore vengono raccolti nella struttura. I livelli di gravità supportati e la relativa gravità sono i seguenti:
- Correzione errori di programma
- Informazioni
- Notifica
- Avvertimento
- Errore
- Critico
- Avviso
- Emergenza
Aggiungere destinazioni
I dati Syslog possono essere inviati solo a un'area di lavoro Log Analytics in cui sono archiviati nella tabella Syslog . Aggiungere una destinazione di tipo Log di Monitoraggio di Azure e selezionare un'area di lavoro Log Analytics. Anche se è possibile aggiungere più aree di lavoro, tenere presente che invieranno dati duplicati a ognuno di essi, con un costo aggiuntivo.
Verificare la raccolta dati
Per verificare che i dati vengano raccolti, verificare la presenza di record nella tabella Syslog . Dalla macchina virtuale o dall'area di lavoro Log Analytics nel portale di Azure selezionare Log e quindi fare clic sul pulsante Tabelle . Nella categoria Macchine virtuali fare clic su Esegui accanto a Syslog.
Annotazioni
Quando si inseriscono dati syslog usando un server d'inoltro dei log, possono verificarsi incoerenze tra i campi TimeGenerated ed EventTime.
- TimeGenerated riflette l'ora UTC in cui il messaggio syslog è stato elaborato dal computer che ospita l'agente di inoltro del log o l'agente di raccolta.
- EventTime viene estratto dall'intestazione syslog, che non include informazioni sul fuso orario e viene convertito in UTC usando l'offset del fuso orario locale del server d'inoltro/agente di raccolta.
Ciò può causare differenze tra i due campi quando il server d'inoltro/agente di raccolta e il dispositivo che genera il log si trovano in fusi orari diversi.
Configurare Syslog nell'agente Linux
Durante l’installazione dell'agente di Monitoraggio di Azure in un computer Linux, viene installato un file di configurazione Syslog predefinito che definisce la funzionalità e la gravità dei messaggi raccolti se Syslog è abilitato in un DCR. Il file di configurazione è diverso a seconda del daemon Syslog installato nel client.
Annotazioni
Le versioni dell’agente Linux di Monitoraggio di Azure 1.15.2 e successive supportano i formati RFC Syslog, tra cui Cisco Meraki, Cisco ASA, Cisco FTD, Sophos XG, Juniper Networks, Corelight Zeek, CipherTrust, NXLog, McAfee e Common Event Format (CEF).
Rsyslog
In molte distribuzioni Linux, il daemon rsyslogd è responsabile dell'utilizzo, dell'archiviazione e del routing dei messaggi di log inviati tramite l'API Syslog Linux. L'agente di Monitoraggio di Azure usa il modulo di output di inoltro TCP (omfwd) in rsyslog per inoltrare i messaggi di log.
L'installazione dell'agente di Monitoraggio di Azure include file di configurazione predefiniti che si trovano in /etc/opt/microsoft/azuremonitoragent/syslog/rsyslogconf/. Quando Syslog viene aggiunto a un DCR, questa configurazione viene installata nella directory di sistema etc/rsyslog.d e rsyslog viene riavviato automaticamente per rendere effettive le modifiche.
Annotazioni
Nei sistemi basati su rsyslog, l'agente Linux di Monitoraggio di Azure aggiunge regole di inoltro al set di regole predefinito definito nella configurazione di rsyslog. Se vengono usati più set di regole, gli input associati a set di regole non predefiniti non vengono inoltrati all'agente di Monitoraggio di Azure. Per altre informazioni su più set di regole in rsyslog, vedere la documentazione ufficiale.
Di seguito è riportata la configurazione predefinita che raccoglie i messaggi Syslog inviati dall'agente locale per tutte le strutture con tutti i livelli di log.
$ cat /etc/rsyslog.d/10-azuremonitoragent-omfwd.conf
# Azure Monitor Agent configuration: forward logs to azuremonitoragent
template(name="AMA_RSYSLOG_TraditionalForwardFormat" type="string" string="<%PRI%>%TIMESTAMP% %HOSTNAME% %syslogtag%%msg:::sp-if-no-1st-sp%%msg%")
# queue.workerThreads sets the maximum worker threads, it will scale back to 0 if there is no activity
# Forwarding all events through TCP port
*.* action(type="omfwd"
template="AMA_RSYSLOG_TraditionalForwardFormat"
queue.type="LinkedList"
queue.filename="omfwd-azuremonitoragent"
queue.maxFileSize="32m"
queue.maxDiskSpace="1g"
action.resumeRetryCount="-1"
action.resumeInterval="5"
action.reportSuspension="on"
action.reportSuspensionContinuation="on"
queue.size="25000"
queue.workerThreads="100"
queue.dequeueBatchSize="2048"
queue.saveonshutdown="on"
target="127.0.0.1" Port="28330" Protocol="tcp")
La configurazione seguente viene utilizzata quando si usa SELinux e si decide di usare socket Unix.
$ cat /etc/rsyslog.d/10-azuremonitoragent.conf
# Azure Monitor Agent configuration: forward logs to azuremonitoragent
$OMUxSockSocket /run/azuremonitoragent/default_syslog.socket
template(name="AMA_RSYSLOG_TraditionalForwardFormat" type="string" string="<%PRI%>%TIMESTAMP% %HOSTNAME% %syslogtag%%msg:::sp-if-no-1st-sp%%msg%")
$OMUxSockDefaultTemplate AMA_RSYSLOG_TraditionalForwardFormat
# Forwarding all events through Unix Domain Socket
*.* :omuxsock:
$ cat /etc/rsyslog.d/05-azuremonitoragent-loadomuxsock.conf
# Azure Monitor Agent configuration: load rsyslog forwarding module.
$ModLoad omuxsock
In alcuni sistemi legacy potrebbero verificarsi problemi di formattazione del log rsyslog quando viene usato un formato di inoltro tradizionale per inviare eventi Syslog all'agente di Monitoraggio di Azure. Per questi sistemi, l'agente di Monitoraggio di Azure inserisce automaticamente un modello di server d'inoltro legacy:
template(name="AMA_RSYSLOG_TraditionalForwardFormat" type="string" string="%TIMESTAMP% %HOSTNAME% %syslogtag%%msg:::sp-if-no-1st-sp%%msg%\n")
Syslog-ng
L'installazione dell'agente di Monitoraggio di Azure include file di configurazione predefiniti che si trovano in /etc/opt/microsoft/azuremonitoragent/syslog/syslog-ngconf/azuremonitoragent-tcp.conf. Quando Syslog viene aggiunto a un DCR, questa configurazione viene installata nella directory di sistema /etc/syslog-ng/conf.d/azuremonitoragent-tcp.conf e syslog-ng viene riavviato automaticamente per rendere effettive le modifiche.
Il contenuto predefinito è illustrato nell'esempio seguente. Questo esempio raccoglie i messaggi Syslog inviati dall'agente locale per tutte le funzionalità e tutti i livelli di gravità.
$ cat /etc/syslog-ng/conf.d/azuremonitoragent-tcp.conf
# Azure MDSD configuration: syslog forwarding config for mdsd agent
options {};
# during install time, we detect if s_src exist, if it does then we
# replace it by appropriate source name like in redhat 's_sys'
# Forwrding using tcp
destination d_azure_mdsd {
network("127.0.0.1"
port(28330)
log-fifo-size(25000));
};
log {
source(s_src); # will be automatically parsed from /etc/syslog-ng/syslog-ng.conf
destination(d_azure_mdsd);
flags(flow-control);
};
La configurazione seguente viene utilizzata quando si usa SELinux e si decide di usare socket Unix.
$ cat /etc/syslog-ng/conf.d/azuremonitoragent.conf
# Azure MDSD configuration: syslog forwarding config for mdsd agent options {};
# during install time, we detect if s_src exist, if it does then we
# replace it by appropriate source name like in redhat 's_sys'
# Forwrding using unix ___domain socket
destination d_azure_mdsd {
unix-dgram("/run/azuremonitoragent/default_syslog.socket"
flags(no_multi_line) );
};
log {
source(s_src); # will be automatically parsed from /etc/syslog-ng/syslog-ng.conf
destination(d_azure_mdsd);
};
Annotazioni
Monitoraggio di Azure supporta la raccolta di messaggi inviati da rsyslog o syslog-ng, dove rsyslog rappresenta il daemon predefinito. Il daemon Syslog predefinito nella versione 5 di Red Hat Enterprise Linux e Oracle Linux (sysklog) non è supportato per la raccolta di eventi Syslog. Per raccogliere dati di SysLog da questa versione delle distribuzioni, è necessario installare e configurare il daemon rsyslog in modo da sostituire sysklog.
Se si modifica la configurazione di SysLog, è necessario riavviare il daemon SysLog per rendere effettive le modifiche.
Strutture supportate
Con l'agente di raccolta Syslog sono supportate le funzionalità seguenti:
| Indice Pri | Pri Name |
|---|---|
| 0 | Nessuno |
| 1 | Kern |
| 2 | utente |
| 3 | posta elettronica |
| 4 | daemon |
| 4 | auth |
| 5 | log di sistema |
| 6 | lpr |
| 7 | notizie |
| 8 | uucp |
| 9 | FTP |
| 10 | ntp |
| 11 | revisione contabile |
| 12 | avviso |
| 13 | contrassegno |
| 14 | local0 |
| 15 | local1 |
| 16 | local2 |
| 17 | local3 |
| 18 | local4 |
| 19 | local5 |
| 20 | local6 |
| 21 | local7 |
Passaggi successivi
- Altre informazioni su agente di Monitoraggio di Azure.
- Altre informazioni su regole di raccolta dati.