Log Analytics aracısı ile Syslog veri kaynaklarını toplama
Dikkat
Bu makale, Kullanım Süresi Sonu (EOL) durumu olan bir Linux dağıtımı olan CentOS'a başvurur. Lütfen kullanımınızı ve buna uygun planlamayı göz önünde bulundurun. Daha fazla bilgi için bkz . CentOS Kullanım Süresi Sonu kılavuzu.
Syslog, Linux için ortak olan bir olay günlüğü protokolüdür. Uygulamalar yerel makinede depolanabilecek veya bir Syslog toplayıcısına teslim edilebilecek iletiler gönderir. Linux için Log Analytics aracısı yüklendiğinde, yerel Syslog daemon'ını iletileri aracıya iletecek şekilde yapılandırılır. Ardından aracı, iletileri ilgili kaydın oluşturulduğu Azure İzleyici'ye gönderir.
Önemli
Eski Log Analytics aracısı 31 Ağustos 2024 itibarıyla kullanımdan kaldırılmıştır. Microsoft artık Log Analytics aracısı için herhangi bir destek sağlamayacaktır. Verileri Azure İzleyici'ye almak için Log Analytics aracısını kullanıyorsanız şimdi Azure İzleyici aracısına geçin.
Not
Azure İzleyici rsyslog veya syslog-ng tarafından gönderilen iletilerin toplanmasını destekler; burada rsyslog varsayılan daemon'dur. Red Hat Enterprise Linux, CentOS ve Oracle Linux sürümünün (sysklog) 5. sürümündeki varsayılan Syslog daemon'ı Syslog olay koleksiyonu için desteklenmez. Bu dağıtımların bu sürümünden Syslog verilerini toplamak için rsyslog daemon'ının yüklenmesi ve sysklog'un yerini alacak şekilde yapılandırılması gerekir.
Syslog toplayıcısı ile aşağıdaki özellikler desteklenir:
- Kaya
- kullanıcı
- posta
- cin
- kimlik doğrulaması
- syslog
- Lpr
- haberler
- Uucp
- cron
- authpriv
- ftp
- local0-local7
Diğer tüm tesisler için Azure İzleyici'de bir Özel Günlükler veri kaynağı yapılandırın.
Syslog'ı yapılandırma
Linux için Log Analytics aracısı yalnızca yapılandırmasında belirtilen özelliklere ve önem derecelerine sahip olayları toplar. Syslog'ı Azure portalı üzerinden veya Linux aracılarınızdaki yapılandırma dosyalarını yöneterek yapılandırabilirsiniz.
Azure portalında Syslog'ı yapılandırma
Log Analytics çalışma alanının Aracı yapılandırma menüsünden Syslog'ı yapılandırın. Bu yapılandırma, her Linux aracısının yapılandırma dosyasına teslim edilir.
Tesis ekle'yi seçerek yeni bir tesis ekleyebilirsiniz. Her tesis için yalnızca seçilen önem derecelerine sahip iletiler toplanır. Toplamak istediğiniz tesisin önem derecelerini seçin. İletileri filtrelemek için başka ölçüt sağlayamazsınız.
Varsayılan olarak, tüm yapılandırma değişiklikleri otomatik olarak tüm aracılara gönderilir. Syslog'ı her Linux aracısına el ile yapılandırmak istiyorsanız Aşağıdaki yapılandırmayı makinelerime uygula onay kutusunu temizleyin.
Linux aracıda Syslog'ı yapılandırma
Log Analytics aracısı bir Linux istemcisine yüklendiğinde, toplanan iletilerin tesisini ve önem derecesini tanımlayan varsayılan bir Syslog yapılandırma dosyası yükler. Yapılandırmayı değiştirmek için bu dosyayı değiştirebilirsiniz. Yapılandırma dosyası, istemcinin yüklediği Syslog daemon'a bağlı olarak farklıdır.
Not
Syslog yapılandırmasını düzenlerseniz değişikliklerin etkili olması için Syslog daemon'unu yeniden başlatmanız gerekir.
rsyslog
rsyslog için yapılandırma dosyası konumunda /etc/rsyslog.d/95-omsagent.conf
bulunur. Varsayılan içeriği aşağıdaki örnekte gösterilmiştir. Bu örnek, uyarı düzeyi veya daha yüksek olan tüm tesisler için yerel aracıdan gönderilen Syslog iletilerini toplar.
kern.warning @127.0.0.1:25224
user.warning @127.0.0.1:25224
daemon.warning @127.0.0.1:25224
auth.warning @127.0.0.1:25224
syslog.warning @127.0.0.1:25224
uucp.warning @127.0.0.1:25224
authpriv.warning @127.0.0.1:25224
ftp.warning @127.0.0.1:25224
cron.warning @127.0.0.1:25224
local0.warning @127.0.0.1:25224
local1.warning @127.0.0.1:25224
local2.warning @127.0.0.1:25224
local3.warning @127.0.0.1:25224
local4.warning @127.0.0.1:25224
local5.warning @127.0.0.1:25224
local6.warning @127.0.0.1:25224
local7.warning @127.0.0.1:25224
Yapılandırma dosyasının bölümünü kaldırarak bir tesisi kaldırabilirsiniz. Bu tesisin girişini değiştirerek belirli bir tesis için toplanan önem derecelerini sınırlayabilirsiniz. Örneğin, kullanıcı tesisini hata veya daha yüksek önem derecesine sahip iletilerle sınırlamak için yapılandırma dosyasının bu satırını aşağıdaki örnekte değiştirebilirsiniz:
user.error @127.0.0.1:25224
syslog-ng
syslog-ng yapılandırma dosyası konumunda /etc/syslog-ng/syslog-ng.conf
bulunur. Varsayılan içeriği bu örnekte gösterilmiştir. Bu örnek, tüm tesisler ve tüm önem dereceleri için yerel aracıdan gönderilen Syslog iletilerini toplar.
#
# Warnings (except iptables) in one file:
#
destination warn { file("/var/log/warn" fsync(yes)); };
log { source(src); filter(f_warn); destination(warn); };
#OMS_Destination
destination d_oms { udp("127.0.0.1" port(25224)); };
#OMS_facility = auth
filter f_auth_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(auth); };
log { source(src); filter(f_auth_oms); destination(d_oms); };
#OMS_facility = authpriv
filter f_authpriv_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(authpriv); };
log { source(src); filter(f_authpriv_oms); destination(d_oms); };
#OMS_facility = cron
filter f_cron_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(cron); };
log { source(src); filter(f_cron_oms); destination(d_oms); };
#OMS_facility = daemon
filter f_daemon_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(daemon); };
log { source(src); filter(f_daemon_oms); destination(d_oms); };
#OMS_facility = kern
filter f_kern_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(kern); };
log { source(src); filter(f_kern_oms); destination(d_oms); };
#OMS_facility = local0
filter f_local0_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(local0); };
log { source(src); filter(f_local0_oms); destination(d_oms); };
#OMS_facility = local1
filter f_local1_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(local1); };
log { source(src); filter(f_local1_oms); destination(d_oms); };
#OMS_facility = mail
filter f_mail_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(mail); };
log { source(src); filter(f_mail_oms); destination(d_oms); };
#OMS_facility = syslog
filter f_syslog_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(syslog); };
log { source(src); filter(f_syslog_oms); destination(d_oms); };
#OMS_facility = user
filter f_user_oms { level(alert,crit,debug,emerg,err,info,notice,warning) and facility(user); };
log { source(src); filter(f_user_oms); destination(d_oms); };
Yapılandırma dosyasının bölümünü kaldırarak bir tesisi kaldırabilirsiniz. Belirli bir tesis için toplanan önem derecelerini listeden kaldırarak sınırlayabilirsiniz. Örneğin, kullanıcı tesisini yalnızca kritik iletileri uyaracak şekilde sınırlamak için, yapılandırma dosyasının bu bölümünü aşağıdaki örnekte gösterildiği gibi değiştirebilirsiniz:
#OMS_facility = user
filter f_user_oms { level(alert,crit) and facility(user); };
log { source(src); filter(f_user_oms); destination(d_oms); };
Diğer Syslog bağlantı noktalarından veri toplama
Log Analytics aracısı, 25224 numaralı bağlantı noktasındaki yerel istemcide Syslog iletilerini dinler. Aracı yüklendiğinde, varsayılan bir Syslog yapılandırması uygulanır ve aşağıdaki konumda bulunur:
- Rsyslog:
/etc/rsyslog.d/95-omsagent.conf
- Syslog-ng:
/etc/syslog-ng/syslog-ng.conf
İki yapılandırma dosyası oluşturarak bağlantı noktası numarasını değiştirebilirsiniz: FluentD yapılandırma dosyası ve yüklediğiniz Syslog daemon'a bağlı olarak rsyslog-or-syslog-ng dosyası.
FluentD yapılandırma dosyası, içinde bulunan
/etc/opt/microsoft/omsagent/conf/omsagent.d
yeni bir dosya olmalı ve girdidekiport
değeri özel bağlantı noktası numaranızla değiştirmelidir.<source> type syslog port %SYSLOG_PORT% bind 127.0.0.1 protocol_type udp tag oms.syslog </source> <filter oms.syslog.**> type filter_syslog
rsyslog için içinde bulunan
/etc/rsyslog.d/
yeni bir yapılandırma dosyası oluşturmanız ve değerini%SYSLOG_PORT%
özel bağlantı noktası numaranızla değiştirmeniz gerekir.Not
Yapılandırma dosyasında
95-omsagent.conf
bu değeri değiştirirseniz, aracı varsayılan yapılandırmayı uyguladığında bu değerin üzerine yazılır.# OMS Syslog collection for workspace %WORKSPACE_ID% kern.warning @127.0.0.1:%SYSLOG_PORT% user.warning @127.0.0.1:%SYSLOG_PORT% daemon.warning @127.0.0.1:%SYSLOG_PORT% auth.warning @127.0.0.1:%SYSLOG_PORT%
Syslog-ng yapılandırması, daha sonra gösterilen örnek yapılandırma kopyalanarak ve içinde bulunan
/etc/syslog-ng/
yapılandırma dosyasınınsyslog-ng.conf
sonuna özel değiştirilmiş ayarlar eklenerek değiştirilmelidir. Veya varsayılan etiketini%WORKSPACE_ID%_oms
%WORKSPACE_ID_OMS
kullanmayın. Değişikliklerinizi ayırt etmeye yardımcı olmak için özel bir etiket tanımlayın.Not
Yapılandırma dosyasındaki varsayılan değerleri değiştirirseniz, aracı varsayılan yapılandırmayı uyguladığında bunların üzerine yazılır.
filter f_custom_filter { level(warning) and facility(auth; }; destination d_custom_dest { udp("127.0.0.1" port(%SYSLOG_PORT%)); }; log { source(s_src); filter(f_custom_filter); destination(d_custom_dest); };
Değişiklikleri tamamladıktan sonra yapılandırma değişikliklerinin etkili olduğundan emin olmak için Syslog'u ve Log Analytics aracı hizmetini yeniden başlatın.
Syslog kayıt özellikleri
Syslog kayıtları bir Syslog türüne sahiptir ve aşağıdaki tabloda gösterilen özelliklere sahiptir.
Özellik | Açıklama |
---|---|
Bilgisayar | Olayın toplandığı bilgisayar. |
Tesis | Sistemin iletiyi oluşturan bölümünü tanımlar. |
HostIP | İletiyi gönderen sistemin IP adresi. |
HostName | İletiyi gönderen sistemin adı. |
SeverityLevel | Olayın önem derecesi. |
SyslogMessage | İletinin metni. |
ProcessID | İletiyi oluşturan işlemin kimliği. |
EventTime | Olayın oluşturulduğu tarih ve saat. |
Syslog kayıtlarıyla günlük sorguları
Aşağıdaki tabloda Syslog kayıtlarını alan günlük sorgularının farklı örnekleri verilmiştir.
Sorgu | Açıklama |
---|---|
Syslog | Tüm Syslog'lar |
Syslog | where SeverityLevel == "error" | Hata önem derecesine sahip tüm Syslog kayıtları |
Syslog | Summarize AggregatedValue = count() by Computer | Bilgisayara göre Syslog kayıtlarının sayısı |
Syslog | Summarize AggregatedValue = count() by Facility | Tesise göre Syslog kayıtlarının sayısı |
Sonraki adımlar
- Veri kaynaklarından ve çözümlerden toplanan verileri analiz etmek için günlük sorguları hakkında bilgi edinin.
- Syslog kayıtlarındaki verileri tek tek alanlara ayrıştırmak için özel alanlar kullanın.
- Linux aracılarını diğer veri türlerini toplayacak şekilde yapılandırın.