Ringkasan LOG4J.PROPERTIES:
1. Pendahuluan
Log4j adalah proyek open source dari Apache. Dengan menggunakan Log4j, kami dapat mengontrol tujuan pengiriman informasi log ke konsol, file, komponen GUI, bahkan server soket, penebang acara NT, Daemon Syslog UNIX, dll.; Kami juga dapat mengontrol format output dari setiap log; Dengan mendefinisikan tingkat setiap informasi log, kami dapat mengontrol proses pembuatan log lebih hati -hati.
Log4J terdiri dari tiga komponen penting: prioritas informasi log, tujuan output informasi log, dan format output dari informasi log. Prioritas informasi log adalah dari tinggi ke rendah. Kesalahan, peringatkan, info, dan debug, yang digunakan untuk menentukan pentingnya informasi log ini; Tujuan output dari informasi log menentukan apakah log akan dicetak ke konsol atau file; dan format output mengontrol konten tampilan dari informasi log.
2. File Konfigurasi
Bahkan, Anda juga tidak dapat menggunakan file konfigurasi sama sekali, tetapi konfigurasikan lingkungan log4j dalam kode Anda. Namun, menggunakan file konfigurasi akan membuat aplikasi Anda lebih fleksibel.
Log4j mendukung dua format file konfigurasi, satu adalah file format XML dan yang lainnya adalah file format properti. Di bawah ini kami memperkenalkan metode menggunakan format properti sebagai file konfigurasi:
Contoh:
LOG4J.ROOTLOGGER = Info, A1 LOG4J.Appender.A1 = org.apache.log4j.consoleAppender LOG4J.Appender.a1.layout = org.apache.log4j.patternlayout log4j.Appender.
1. Mengkonfigurasi logger root, sintaksinya adalah:
LOG4J.ROOTLOGGER = [LEVEL], APPENDERNAME, APPERDERNAME,…
Di antara mereka, level adalah prioritas penebangan, dibagi menjadi off, fatal, kesalahan, memperingatkan, info, debug, semua atau level yang Anda tentukan. Log4j merekomendasikan hanya menggunakan empat level, dengan prioritas dari tinggi ke rendah, yaitu kesalahan, peringatan, info, dan debug. Pada level yang ditentukan di sini, Anda dapat mengontrol sakelar ke tingkat informasi log yang sesuai dalam aplikasi. Misalnya, jika level info didefinisikan di sini, semua informasi log level debug dalam aplikasi tidak akan dicetak.
nama unggulan menentukan di mana informasi log adalah output. Anda dapat menentukan beberapa tujuan output secara bersamaan.
2. Konfigurasikan Appender Output Informasi Log, yang sintaksisnya adalah:
LOG4J.Appender.ApplerName = sepenuhnya.Qualified.name.of.Appender.class LOG4J.Appender.ApplerName.Option1 = value1… LOG4J.Appender.applerName.Option = valuen
Di antara mereka, pengembara yang disediakan oleh Log4J adalah sebagai berikut:
org.apache.log4j.consoleAppender (konsol), org.apache.log4j.fileAppender (file), org.apache.log4j.dailyrollingfileAppender (Buat file log setiap hari), org.apache.log4j.rollingfileAppender (ciptakan a neenge.apache.log4j.rollingfileAppender (ciptakan a neenge.apache.log4j.rollingfileAppender (ciptakan a neenge.apache.log4j.rollingfileAppender (ciptakan a neenge.apache.log4j.rollingfileAppender (ciptakan a neenge.apache.log4j.rollingfileAppender (ciptakan a neeng.apache) org.apache.log4j.writerappender (kirim informasi log dalam format aliran ke tempat tertentu)
(1). Opsi ConsoleAppender
Threshold = Warn: Menentukan tingkat output terendah dari pesan log. IMMEDIATEFLUSH = TRUE: Nilai default benar, yang berarti semua pesan akan segera output. Target = system.err: Secara default, itu adalah: System.out, tentukan konsol output
(2). Opsi FileAppender
Threshold = Warn: Menentukan tingkat output terendah dari pesan log.
IMMEDIATEFLUSH = TRUE: Nilai default benar, yang berarti semua pesan akan segera output.
File = mylog.txt: Menentukan bahwa pesan tersebut adalah output ke file mylog.txt.
Append = false: Nilai default benar, yang berarti menambahkan pesan ke file yang ditentukan. Salah berarti menimpa pesan ke konten file yang ditentukan.
(3) .DailyRollingFileAppender Opsi
Threshold = Warn: Menentukan tingkat output terendah dari pesan log.
IMMEDIATEFLUSH = TRUE: Nilai default benar, yang berarti semua pesan akan segera output.
File = mylog.txt: Menentukan bahwa pesan tersebut adalah output ke file mylog.txt.
Append = false: Nilai default benar, yang berarti menambahkan pesan ke file yang ditentukan. Salah berarti menimpa pesan ke konten file yang ditentukan.
DatePattern = '.' Yyyy-ww: Gulir file seminggu sekali, yaitu menghasilkan file baru setiap minggu. Tentu saja, Anda juga dapat menentukan bulanan, minggu, hari, waktu dan menit. Artinya, format yang sesuai adalah sebagai berikut:
1) '.' Yyyy-mm: Bulanan
2) '.' Yyyy-ww: Mingguan
3) '.' Yyyy-mm-dd: setiap hari
4) '.' Yyyy-mm-dd-a: dua kali sehari
5) '.' Yyyy-mm-dd-hh: jam
6) '.' Yyyy-mm-dd-hh-mm: per menit
(4) .RollingFileAppender Opsi
Threshold = Warn: Menentukan tingkat output terendah dari pesan log.
IMMEDIATEFLUSH = TRUE: Nilai default benar, yang berarti semua pesan akan segera output.
File = mylog.txt: Menentukan bahwa pesan tersebut adalah output ke file mylog.txt.
Append = false: Nilai default benar, yang berarti menambahkan pesan ke file yang ditentukan. Salah berarti menimpa pesan ke konten file yang ditentukan.
MaxFileSize = 100kb: Suffix bisa KB, MB atau GB. Saat file log mencapai ukuran ini, itu akan secara otomatis menggulir, dan konten asli akan dipindahkan ke
file mylog.log.1.
MaxBackupIndex = 2: Menentukan jumlah maksimum file gulir yang dapat dihasilkan.
3. Konfigurasikan tata letak informasi log, dan sintaksinya adalah:
LOG4J.Appender.ApplerName.Layout = Full.Qualified.name.of.layout.class
LOG4J.Appender.ApplerName.Layout.Option1 = value1
...
LOG4J.Appender.ApplerName.Layout.Option = Valuen
Di antara mereka, tata letak yang disediakan oleh log4j adalah sebagai berikut:
org.apache.log4j.htmllayout (tata letak dalam bentuk tabel html),
org.apache.log4j.patternlayout (mode tata letak dapat ditentukan secara fleksibel),
org.apache.log4j.simplelayout (berisi level dan string informasi dari informasi log),
org.apache.log4j.ttcclayout (termasuk waktu, utas, kategori, dll.
4. Pengaturan Format Output
Di file konfigurasi, Anda dapat mengatur format output log melalui log4j.applender.a1.layout.conversionPattern.
parameter:
%P: Prioritas informasi log keluaran, yaitu debug, info, peringatan, kesalahan, fatal,
%D: Tanggal atau waktu titik waktu log adalah output. Format default adalah ISO8601. Anda juga dapat menentukan format sesudahnya, seperti: %d {yyy mmm dd hh: mm: ss, sss}, outputnya serupa: 18 Oktober 2002 22:10:28, 921
%R: Jumlah milidetik ke output dari startup aplikasi ke output dari informasi log ini
%C: Kategori yang dimiliki oleh informasi log keluaran biasanya merupakan nama lengkap kelas
%t: output nama utas yang menghasilkan acara log
%L: Peristiwa log output terjadi di lokasi kemunculan%C.%M (%F:%L), termasuk nama kategori, utas kejadian, dan jumlah baris dalam kode. Contoh: testlog4.main (testlog4.java:10)
%X: Output NDC (lingkungan diagnostik bersarang) yang terkait dengan utas saat ini, terutama dalam aplikasi seperti servlet Java dengan multi-pelanggan dan multi-threading.
%%: output karakter "%"
%F: Nama file di mana pesan log output dihasilkan
%L: Nomor baris dalam kode output
%M: Pesan yang ditentukan dalam kode output dan informasi log spesifik yang dihasilkan
%n: output Break jalur pengembalian carriage, platform windows adalah "/r/n", dan platform unix adalah "/n" untuk mengeluarkan jeda baris informasi log
Pengubah dapat ditambahkan antara % dan karakter pola untuk mengontrol lebar minimum, lebar maksimum, dan penyelarasan teks. menyukai:
1)%20c: Tentukan nama kategori output, lebar minimum adalah 20. Jika nama kategori kurang dari 20, itu dijalankan dengan benar secara default.
2)%-20C: Menentukan nama kategori output. Lebar minimum adalah 20. Jika nama kategori kurang dari 20, tanda "-" menentukan perataan kiri.
3)%. 30c: Tentukan nama kategori output. Lebar maksimum adalah 30. Jika nama kategori lebih besar dari 30, karakter tambahan di sebelah kiri akan terputus, tetapi jika mereka kurang dari 30, tidak akan ada spasi.
4)%20.30C: Jika nama kategori kurang dari 20, isi ruang dan sejajarkan dengan benar. Jika namanya lebih panjang dari 30 karakter, potong karakter yang dicegat dari kiri.
3. Muat file log4j.properties
1. Memuat dalam mode pegas, konfigurasi dan di web.xml:
Spring Loads Log4j.Properties, yang menyediakan LOG4JConfigListener, yang dapat memuat file konfigurasi log4j dan jalur output log4j dari lokasi yang ditentukan melalui konfigurasi web.xml. Perlu dicatat itu
LOG4JConfigListener harus sebelum pendengar Spring.
Web.xml
<!-Atur lokasi file konfigurasi log4J yang dimuat oleh sprng-> <context-param> <param-name> log4jConfiglocation </param-name> <param-value> Web-INF/CLASSE/LOG4J.PROPERTIES </Param-value> </Context-Param> <! <param-name> log4jrefresherinterval </param-name> <param-value> 10000 </param-value> </context-param> <listener> <listener-class> org.springframework.web.util.log4jconfigListener </listener-class> </listener>
2. File sumber daya dapat dimuat melalui kelas sumber daya, dan terintegrasi dengan penggunaannya.
kelas publik testlog4j {public static void main (string [] args) {properticonfigurator.configure ("d: /code/conf/log4j.properties"); Logger logger = logger.getLogger (testlog4j. Class); logger.debug ("debug"); logger.error ("error"); }}4. Gunakan dalam program ini
Sebelum menggunakan log4j dalam program, Anda harus terlebih dahulu mengimpor Commons-logging.jar dan logging-log4j-1.2.9.jar ke dalam classpath dan menempatkan log4j.properties di direktori root src. Ini akan siap digunakan selanjutnya.
1. Dapatkan perekam
Menggunakan log4j, langkah pertama adalah mendapatkan perekam log, yang akan bertanggung jawab untuk mengendalikan informasi log. Sintaksnya adalah:
Public Static Logger GetLogger (nama string),
Dapatkan logger dengan nama yang ditentukan dan, jika perlu, buat logger baru untuk nama tersebut. Nama umumnya dinamai di kelas ini, seperti:
static Logger logger = logger.getLogger (serverwithlog4j.class.getName ());
Catatan: Disarankan untuk menggunakan logging commons yang dikombinasikan dengan log4j untuk logging
private static log logger = logfactory.getLog (class.class Anda);
2. Masukkan Informasi Catatan (Format Informasi Log)
Ketika dua langkah yang diperlukan sebelumnya selesai, Anda dapat dengan mudah memasukkan pernyataan logging dari berbagai tingkat prioritas di mana pun Anda ingin masuk. Sintaksnya adalah sebagai berikut:
Logger.debug (pesan objek); Logger.info (pesan objek); Logger.warn (pesan objek); Logger.Error (pesan objek);
Misalnya:
impor org.apache.log4j.*; LogTest kelas publik ... {static Logger Logger = logger.getLogger (logtest.class.getName ()); public static void main (string [] args) ... {// Muat file log4j.properties melalui properticonfigurator. Jika Anda tidak menambahkan kalimat ini, ada Spring Loading PropertyConfigurator.configure ("./srclog4j.properties"); Logger.debug ("Debug ..."); logger.info ("info ..."); Logger.warn ("Warn ..."); logger.error ("error ..."); }}Meringkaskan
Di atas adalah konfigurasi log4j.properties dan aplikasi pemuatan yang diperkenalkan oleh editor. Saya harap ini akan membantu semua orang. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas semua orang tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!