GNU/Linux >> Belajar Linux >  >> Linux

Apa perbedaan antara syslog, rsyslog dan syslog-ng?

Solusi 1:

Pada dasarnya, semuanya sama, karena semuanya mengizinkan pencatatan data dari berbagai jenis sistem di repositori pusat.

Tetapi mereka adalah tiga proyek yang berbeda, setiap proyek berusaha meningkatkan yang sebelumnya dengan lebih banyak keandalan dan fungsionalitas.

Syslog proyek adalah proyek pertama. Itu dimulai pada tahun 1980. Ini adalah proyek root untuk Syslog protokol. Saat ini Syslog merupakan protokol yang sangat sederhana. Pada awalnya hanya mendukung UDP untuk transportasi, sehingga tidak menjamin pengiriman pesan.

Berikutnya adalah syslog-ng pada tahun 1998. Ini memperluas syslog dasar protokol dengan fitur baru seperti:

  • penyaringan berbasis konten
  • Login langsung ke database
  • TCP untuk transportasi
  • Enkripsi TLS

Berikutnya adalah Rsyslog pada tahun 2004. Ini memperluas syslog protokol dengan fitur baru seperti:

  • Dukungan Protokol RELP
  • Dukungan operasi buffer

Katakanlah hari ini mereka adalah tiga project bersamaan yang telah berkembang secara terpisah berdasarkan versi, tetapi juga berkembang secara paralel terkait dengan apa yang dilakukan tetangga.

Saya pribadi berpikir bahwa hari ini syslog-ng adalah referensi dalam banyak kasus, karena ini adalah proyek paling matang yang menawarkan fitur utama yang mungkin Anda perlukan, selain penyiapan dan konfigurasi yang mudah dan komprehensif.

Solusi 2:

ini adalah 3 jenis pengelola log yang berbeda :ini memungkinkan sistem Anda untuk mengumpulkan filter, dan mengirim/menyimpan log.

  • Syslog (daemon juga bernama sysklogd ) adalah LM default di distribusi Linux umum. Ringan tetapi tidak terlalu fleksibel, Anda dapat mengalihkan fluks log yang diurutkan berdasarkan fasilitas dan tingkat keparahan ke file dan melalui jaringan (TCP, UDP).
  • rsyslog adalah versi "lanjutan" dari sysklogd di mana file konfigurasi tetap sama (Anda dapat menyalin syslog.conf file langsung ke rsyslog.conf dan berhasil); tetapi Anda memiliki banyak hal keren baru yang menyertainya :

    • Anda dapat mendengarkan koneksi TCP/UDP/..., dengan batasan (port, IP Sumber)
    • Anda dapat memuat banyak modul
    • Anda dapat membedakan pemfilteran log berdasarkan program, sumber, pesan, pid, dll. (misalnya, setiap pesan diberi tag dengan pesan "koneksi ditutup" ke file closed.log)
    • Anda dapat membuang pesan setelah satu atau beberapa aturanKunjungi http://www.rsyslog.com yang memang sangat bagus
  • Syslog-ng adalah "Generasi Berikutnya". Saya pikir ini cara terbaik untuk mengelola log:semuanya adalah objek (sumber, tujuan, filter, dan aturan penerusan) dan sintaksnya jelas. Saya ragu dalam hal fungsionalitas bahwa rsyslog dan syslog-ng berbeda.

Solusi 3:

Dari mana saya bisa mendapatkan kode sumber untuk syslog()

Ini disediakan oleh glibc atau implementasi libc pada varian Unix lainnya. Panggilan ini pada dasarnya mengirimkan pesan Anda ke syslog unix domain socket /dev/log. Soket ini biasanya dibuat oleh pencatat sistem (mis. rsyslog, syslog-ng, nxlog, dll).

Solusi 4:

Mereka semua daemon syslog, di mana rsyslog dan syslog-ng lebih cepat dan lebih kaya fitur pengganti syslogd tradisional (kebanyakan tidak terawat). syslog-ng dimulai dari awal (dengan format konfigurasi yang berbeda) sementara rsyslog pada awalnya merupakan fork dari syslogd, mendukung dan memperluas sintaksnya. Dalam beberapa tahun terakhir, rsyslog juga mulai mendukung format konfigurasi yang lebih baru. Saat ini, sangat sulit untuk membandingkan keduanya tanpa membahas secara spesifik dan memulai perang api.

Syslog secara umum cukup membingungkan karena bisa jadi banyak hal. Saya memiliki kesempatan untuk memperjelas di sini:https://sematext.com/blog/2017/01/30/what-is-syslog-daemons-message-formats-and-protocols/


Linux
  1. Perbedaan Antara [[ $a ==Z* ]] Dan [ $a ==Z* ]?

  2. Apa Perbedaan Antara Git Switch dan Checkout?

  3. Apa perbedaan antara strtok_r dan strtok_s di C?

  1. Apa perbedaan antara adduser dan useradd?

  2. Apa perbedaan antara ls dan l?

  3. Apa perbedaan antara `su -` dan` su --login`?

  1. Apa perbedaan antara Redhat dan centOS?

  2. Apa perbedaan antara insmod dan modprobe

  3. Apa perbedaan antara $(CC) dan $CC?