Showing posts with label sistem log. Show all posts
Showing posts with label sistem log. Show all posts

Sunday, 22 November 2009

Cara Kerja Rotasi File Log Linux

Sebelum ini ada juga yang sebelumnya karena ini masih satu bahasan:

Bagaimana Sistem Log di Linux Bekerja
Konfigurasi Syslog Sebagai Log Server
Menulis Pesan ke Syslog/File Log

Judul yang sekarang adalah : Cara Kerja Rotasi File Log Linux.

File-file log yang umumnya terdapat pada direktori /var/log, suatu saat bertambah besar ukutanya yang mungkin suatu saat akan menghabiskan ruang hardisk system anda yang dapat berakibat tidak berjalanya system atau service pada sistem linux Anda. Untunglah hal tersebut tidak akan terjadi, ini dikarenakan pada system linux umunya telah dilengkapi dengan mekanisme rotasi file-file log melalui paket software logrotate.

Cara kerja rotasi log dengan logrotate sangat sederhana yaitu memindahkan atau merename file log lama menjadi nama lain (misalnya: dari file.log menjadi file.log.1) selanjutnya membuat file log yang baru. proses ini dilakukan pada waktu priode waktu tertentu yang kemudian di ulangi kembali dipriode berikutnya (misalnya: file.log.1 --> file.log.2, file.log --> file.log.1, create new file.log) dan seterusnya sampai batas jumlah rotasi yang ditetapkan. Gambar di bawah ini merupakan ilustrasi dari proses rotasi file log, dalam priode minggu ke 1 sampai minggu ke 4.

[caption id="attachment_267" align="aligncenter" width="364" caption="logrotate (rotasi file log)"]logrotate (rotasi file log)[/caption]

Paket logrotate berisi tugas cron yang secara otomatis akan merotasi file-file log sesuai konfigurasi file /etc/logrotate.conf dan file-file konfigurasi di direktori /etc/logrotate.d/. Secara default, ini di konfigurasi untuk merotasi file log setiap minggu dan tetap mempertahankan file-file log empat minggu sebelumnya sebelumnya. File konfigurasi utama logrotate adalah /etc/logrotate.conf

berikut ini adalah contoh isi dari file konfigurasi logrotate.conf:

shell]#cat /etc/logrotate.conf

# see "man logrotate" for details
# rotate log files weekly
weekly
# keep 4 weeks worth of backlogs
rotate 4
# create new (empty) log files after rotating old ones
create
# uncomment this if you want your log files compressed
#compress
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
# no packages own wtmp -- we'll rotate them here
/var/log/wtmp {
monthly
minsize 1M
create 0664 root utmp
rotate 1
}


Arti keyword "weekly" pada file logrotate.conf adalah proses rotasi file log dilakukan setiap priode satu minggu. keyword "rotate 4" adalah jumlah rotasi dilakukan sampai empat kali. file konfigurasi logrotate.conf berisi dua bagian, bagian pertama terdiri dari opsi-opsi global yang berlaku untuk semua file-file log. bagian kedua adalah section-section konfigurasi individual (definisi masing-masing file log). Opsi-opsi yang ada dalam definisi masing-masing file log akan mempengaruhi opsi-opsi pada bagian global. beberapa definisi konfigurasi file log ditulis dalam file tersendiri , sebagaimana yang tampak dalam direktori /etc/logrotate.d/ contoh isi file syslog yang terdapat dalam direktori /etc/logrotate.d/ :

shell]# cat /etc/logrotate.d/syslog


/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
}

makna dari contoh file definisi file log diatas menyatakan file-file log yang akan dirotasi adalah /var/log/messages, /var/log/secure, /var/log/maillog, /var/log/spooler, /var/log/boot.log, dan /var/log/cron.

Menulis Pesan ke Syslog/File Log

Anda dapat menulis pesan kedalam syslog/file log, hal ini sangat membantu Anda ketika Anda membuat sebuah shell Script atau program yang diharapkan menulis setiap pesan error ataupun informasi ke sistem log linux anda. Pada sistem linux telah disediakan tool untuk maksud tersebut yaitu perintah "logger".

Untuk menulis pesan dengan nama facility "daemon" dan priority "info", dapat Anda ketik perintah logger seperti berikut ini:

#logger -p daemon.info "my daemon start : OK"


setelah itu coba anda lihat pesan log pada baris akhir dari file /var/log/messages.

#tail /var/log/messages


Dec 7 09:30:15 pc4 nm-system-settings: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-lo ...
Dec 7 09:30:15 pc4 nm-system-settings: ifcfg-rh: error: Ignoring loopback device config.
Dec 7 12:43:44 pc4 root: my daemon start : OK

Wednesday, 18 November 2009

Konfigurasi Syslog Sebagai Log Server

Pesan yang dihasilkan oleh suatu facility dapat juga dikirimkan oleh syslog ke suatu sistem log lainnya yang ada di dalam jaringan (dengan kata lain dikirim ke komputer lainnya yang menjalankan  syslog daemon dalam mode networking).

Hal ini memungkinkan kita untuk membuat syslog terpusat atau log server.

Ini tentunya dapat memudahkan kita sebagai administrator ketika kita harus mengamati pesan-pesan log dari beberapa sistem tanpa harus mengakses ke sistem sistem tersebut satu persatu, cukup dengan login ke syslog server berikut ini gambar yang mengilustrasikan log terpusat menuju log server.



[caption id="attachment_260" align="aligncenter" width="463" caption="Layout Jaringan Log Server"]Layout Jaringan sysLog Server[/caption]


sesuai gambar diatas (komputer server [192.168.1.1]) di fungsikan sebagai log server yang dapat menerima kiriman pesan-pesan log dari komputer lainya yang ada dalam jaringan. Dalam contoh ini komputer (komputer A [192.168.1.2]), (komputer B [192.168.1.3]),(komputer C[192.168.1.4]). di setup agar mengirimkan pesan log untuk facility "authpriv"-nya dengan priority apapun dikirimkan ke log server (komputer Server[192.168.1.1]).

untuk itu langkah-langkah komputer server [192.168.1.1] agar dapat menerima kiriman pesan log dari jaringan adalah sebagai berikut:

  1. Edit file /etc/sysconfig/syslog dan ubah baris berikut:

  2. SYSLOGD_OPTIONS="-m 0"

    Menjadi
    SYSLOGD_OPTIONS="-m 0 -r"

  3. Selanjutnya restart service daemon syslog dengan perintah berikut:

  4. service syslog restart

  5. kemudian coba amati file log /var/log/secure secara real time (menggunakan opsi -f) dengan perintah berikut ini (jika komputer client sudah dikonfigurasi):

  6. tail -f /var/log/secure

  7. lalukan konfigurasi di sisi client (contoh hal ini adalah komputer A[192.168.1.2])


konfigurasi di sisi komputer client (komputer A[192.168.1.2]) , sebagai berikut:

  1. Sesuai dengan skenario gambar diatas, maka edit file /etc/syslog.conf, dengan entry sebagai berikut:

  2. authpriv.*                                              @192.168.1.1

  3. Selanjutnya restart service daemon syslog dengan perintah berikut ini:

  4. service syslog restart


Selanjutnya sebagai percobaan Anda login via ssh ke komputer A[192.168.1.2], nanti ketika anda berhasil login ke komputer A[192.168.1.2] maka syslogd pada komputer A  akan mengirim pesan lognya ke Komputer Server [192.168.1.1], dan syslogd pada komputer server akan menerima pesan log tersebut yang kemudian menuliskanya ke file /var/log/secure.

ketika terjadi peristiwa login via ssh dari komputer lain[192.168.1.54] ke komputer A [192.168.1.2]

Tuesday, 17 November 2009

Bagaimana Sistem Log di Linux Bekerja

Tgl Belajar: 2 November 09
Dosen: Henry Saptono (boypyt[at]gmail[dot]com)

Tujuan Pembelajaran:

  • Memahami dan mengerti cara kerja sistem log di linux.

  • Mengerti Membaca isi file Log.

  • Mampu mengkonfigurasi sistem log terpusat dengan syslog.

  • Mengerti cara kerja sistem rotasi file-file log dengan logrotate.


ingat:
bahwa salah satu tugas paling penting seorang Administrator adalah memeriksa
(mengamati) file-file log secara rutin.

Pengertian Sistem Log:

Apa itu sistem log... cari aja di google ata0 si indowiki. terlalu panjang kalau di posting disini.. :)

Lokasi File-file log:

Sebagian besar file log di sistem linux terletak dalam direktori /var/log .
shell]$ls /var/log

kan ku jelaskan satu-satu -

Membaca dan Mengamati file Log:

Sebagian besar file-file log dalam format plain text (ASCII Text) apa itu ascii text ... biasa menuju lokasi wiki... Kita dapat menampilkan atau membaca isi file log dengan menggunakan program text editor seperti VI. Beberapa file log dapat di baca oleh user biasa, tapi sebagian besar hanya dapat dibaca oleh user root.

untuk membaca atau menampilkan file log umumnya menggunakan perintah "tail". Berikut ini adalah contoh membaca pesan file log yang terkini dengan menggunakan perintah tail:
shell]# tail /var/log/messages

anda tidak suka mengunakan textkonsol.. tenang modus grafis juga ada.. ketikan perintah berikut di shell prompt:
shell]# gnome-system-log

atau gerakan mouse anda ke Main Menu>System>Administrator>System Logs.  Berikut ini adalah contoh tampilan dari aplikasi gnome-system-log.

[gambar screenshoot]

lihat standar penullisanya..

[date time] [System/Host Name] [Facility] [Messages]

date time: menunjukan tanggal dan waktu kejadian atau peristiwa.
System: Menunjukan Nama komputer atau hostname yang membangkitkan pesan.
Facility: Menunjukan nama dari sebuah komponen sistem yang membangkitkan pesan. facility ini bisa berupa kernel itu sendiri, sistem daemon, atau bahkan aplikasi-aplikasi.
Messages: Text Pesan yang di hasilkan.

Konfigurasi SysLog:

file konfigurasi daemon sistem log (syslogd) ada di /etc/syslog.conf, pada file inilah ditentukan bagaimana syslogd bekerja. isi dari file syslog.conf terdiri dari entri-entri konfigurasi syslog yang juga menunjukan rule-rule dari syslog yang memililki format terdiri dari Selector Field dan Action Field. Selector field terdiri dari porsi facility dan porsi priority yang keduanya dipisahkan oleh tanda titik (.).

facility dapat berupa salah satu atau keyword berikut ini: auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security(auth), syslog, user, uucp, dan local1, local2,local3 .... local7.

Sedangkan Priority adalah salah satu dari key berikut ini:  debug, info, notice, warning, warn(warning), err, error(err), crit, alert, emerg, panic (emerg).

untuk memudahkan dalam memahami rule konfigurasi syslog, berikut ini adalah entri (rule) yang terdapat dalam file konfigurasi /etc/syslog.conf :
shell]# cat /etc/syslog.conf

dari contoh entri konfigurasi dalam file syslog.conf, akan dijelaskan salah satu entri yang ada dalam file syslog.conf:

pada role diatas, dapat di jelaskan bahwa selector field adalah "Cron.*" dan action field adalah "/var/log/cron". selector field terdiri dari facility "cron" dan priority " * ", jadi komponen systemnya adalah daemon atau service cron dengan priority apapun.
Jadi dari entri atau rule tersebut menyebabkan syslogd akan mencatat peran atau messages yang dibangkitkan oleh layanan cron apapun jenis prioritasnya, dan segala pesan dari cron tersebut dituliskan oleh syslogd kedalam file /var/log/cron .

udah ah cukup. baca juga yang ini:
bagaimana jika pean log ingin di kirim kepada user root atau user lainya.
bagaimana cara Konfigurasi Syslog Sebagai Log Server.
bagaimana menulis pesan ke syslog/file log.
bagaimana cara kerja rotasi file log di sistem linux