Kami menjalankan Apache 2.2.9 (Win32) dengan beberapa host virtual yang dikonfigurasi pada satu server. Masing-masing memiliki pengaturan ErrorLog dan CustomLog sendiri yang dalam format "log / [nama domain] -error.log" dan "log / [nama domain] -access.log". Sayangnya ini sekarang membuat file yang cukup besar.
Pada IIS Anda dapat menentukan jadwal log, yang dapat menempatkannya dalam format harian "yymmdd.log". Adakah hal serupa yang bisa saya lakukan di sini?
Tidak harus harian, baik mingguan atau bulanan akan dilakukan. Saya hanya ingin memecahnya sehingga kami dapat menyimpan jumlah X alih-alih semua yang pernah dicatat. Google yang cepat sepertinya memunculkan banyak jawaban berorientasi Linux yang melibatkan pembagi log, skrip dan tugas cron yang tidak terlalu membantu untuk instalasi Windows.
Memperbarui
Berkat radius, saya mengubah httpd-vhosts.conf untuk menggunakan perintah built in rotatelogs Apache , dalam format berikut:
ErrorLog "|bin/rotatelogs logs/[domain name]-error.%Y-%m-%d-%H_%M_%S.log 5M"
CustomLog "|bin/rotatelogs logs/[domain name]-access.%Y-%m-%d-%H_%M_%S.log 5M" common
Mereka akan membuat file log baru ketika yang sekarang mencapai 5MB. Saya tahu itu tidak setiap hari seperti yang diminta, tetapi itu membuat mereka pada ukuran yang dapat dikelola yang akan dilakukan. Saya memang mencoba memutar setelah sekian detik tetapi sepertinya tidak menempatkan cap waktu pada nama file dengan benar (khususnya jam, menit dan detik).
sumber
/usr/bin/rotatelogs
, karena di situlahrotatelogs
ditemukan. Kalau tidak, Apache akan gagal memulai ulang karena kesalahan.Apa yang Anda inginkan disebut rotasi log.
Google tampaknya mencantumkan beberapa tautan yang jelas tentang alat rotasi log untuk windows.
Ini sepertinya solusi spesifik Apache, mungkin itu akan membantu Anda:
http://www.sprint.net.au/~terbut/usefulbox/apachelogrot.htm
sumber
Dokumen di sini:
http://httpd.apache.org/docs/2.2/programs/rotatelogs.html
sumber
Coba langsung dengan
sumber