Rumah > Java > javaTutorial > Cara menggunakan log Log4j dalam Java

Cara menggunakan log Log4j dalam Java

王林
Lepaskan: 2023-05-05 14:10:11
ke hadapan
2718 orang telah melayarinya

Mengapa menggunakan log?

Kita tahu bahawa program akan menjana banyak maklumat semasa operasinya, seperti pukul berapa ia dijalankan dan apakah hasilnya? Untuk kami lebih memahami status berjalan program, kami boleh melihatnya melalui log Log boleh dikeluarkan pada konsol atau output ke fail tertentu Kami akan memperkenalkannya kepada anda secara terperinci dalam artikel berikut.

Muat turun:

Log4J ialah projek sumber terbuka Syarikat Apache untuk pemprosesan log. Alamat muat turun:

https://logging.apache.org/log4j/2.x/download.html

Cara menggunakan log Log4j dalam Java

Selepas muat turun selesai, Kita boleh mendapatkan pakej dengan nama akhiran jre.

Langkah terperinci:

1. Buka IDEA

untuk mencipta projek baharu, kemudian buat pakej lib baharu dalam projek dan letakkan pakej log4j.jar ke dalamnya.

Cara menggunakan log Log4j dalam Java

Kemudian buat kelas dalam src:

Cara menggunakan log Log4j dalam Java

Ikuti langkah dalam gambar:

Cara menggunakan log Log4j dalam Java

Hanya tambah pakej jre di sini:

Cara menggunakan log Log4j dalam Java

2 Cipta objek log

Apabila operasi di atas selesai Selepas itu, anda boleh mencipta objek dalam kelas:

Nota: Pakej Logger yang dipilih di sini adalah daripada apache, jadi pastikan anda tidak memilih yang salah di sini!

Cara menggunakan log Log4j dalam Java

import org.apache.log4j.Logger;

public class logTest {

    public static void main(String[] args) {

        //导入对象:
        Logger log = Logger.getLogger(logTest.class);
        log.error("用于记录error级别的信息"); //记录严重错误
        log.warn("用于记录warn级别的信息");   //记录警告
        log.info("用于记录info级别的信息");   //记录信息
        log.debug("用于记录debug级别的信息"); //记录debug
    }
}
Salin selepas log masuk

Kemudian kita perlu mencipta fail konfigurasi:

Buat fail baharu, akhiran fail mestilah sifat

Cara menggunakan log Log4j dalam Java

Kemudian buat fail baharu, nama boleh ditetapkan kepada: sumber, dan tukar format kepada gambar berikut:

Cara menggunakan log Log4j dalam Java

Kemudian letakkan fail konfigurasi yang baru anda buat ke dalam ini Hanya di dalam fail:

Cara menggunakan log Log4j dalam Java

Kami perlu mengkonfigurasi tiga maklumat paling penting berikut dalam log.properties:

  • Konfigurasikan anda Apakah tahap pengelogan yang akan direkodkan program ke dalam fail log

  • Tentukan destinasi output log, sama ada untuk merekodkan log ke konsol program (sementara? keadaan) atau di suatu tempat pada cakera. Dalam fail (storan berterusan)

  • menentukan format output output maklumat log ke konsol atau fail, atau dalam format apa maklumat log itu direkodkan.

Templat set adalah seperti berikut:

boleh disalin terus ke dalam log.properties:

# 1. Tetapkan tahap output info, Maklumat dan tahap yang lebih tinggi boleh direkodkan ke fail log, tetapi tahap yang lebih rendah seperti nyahpepijat tidak akan direkodkan dalam fail log
# stdout ialah destinasi rekod log yang ditetapkan (nama boleh dipilih secara santai) Untuk sepadan)
log4j.rootLogger=info,stdout

#2. Tetapkan destinasi pengelogan (rekod ConsoleAppender ke konsol)
log4j.appender.stdout=org.apache 🎜>

#3. Tetapkan format atau gaya rekod (System.err ialah gaya merah, System.out ialah gaya hitam)

log4j.appender.stdout.Target=System.err
# Tetapkan rekod format
#PatternLayout dibentangkan mengikut peraturan tersuai kami (%d %l %m %n ialah reka letak peraturan yang ditentukan)
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %l %m %n

Kita boleh mengabaikan maklumat konfigurasi ini dahulu dan lengkapkan konfigurasi di atas dahulu.

Cara menggunakan log Log4j dalam Java

Jika ini berlaku, bermakna ia betul. Mari kita tulis semula sekeping kod untuk melihat fungsi log ini:

import org.apache.log4j.Logger;

import java.util.Scanner;

public class test2 {
    public static void main(String[] args) {

        Logger logger = Logger.getLogger(test2.class);
        Scanner input = new Scanner(System.in);
        try{
            System.out.println("请输入除数:");
            int a = input.nextInt();
            logger.debug("bug:输入除数"+a);
            logger.info("info:输入除数"+a);
            System.out.println("请输入被除数:");
            int b = input.nextInt();
            logger.debug("bug:输入除数"+b);
            logger.info("info:输入除数"+b);
            int c = a/b;

            //把结果记录到日志文件中
            logger.debug("bug:结果"+c);
            logger.info("info:结果"+c);
            System.out.println("结果是:"+c);

        } catch (Exception e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
        }finally {
            System.out.println("程序结束!!");
        }
    }

}
Salin selepas log masuk
Ini ialah operasi bahagi, jalankan dahulu dan lihat kesannya:

Cara menggunakan log Log4j dalam Java

Kami mendapati , setiap langkah yang kami laksanakan dalam program direkodkan dalam log Kerana fail konfigurasi ditetapkan kepada output ke konsol, maklumat log dipaparkan secara langsung pada konsol Jika anda perlu mengeluarkan ke fail tertentu, anda perlu untuk mengkonfigurasinya seperti berikut:

Cara menggunakan log Log4j dalam Java

Kemudian jalankan program bahagian:

Cara menggunakan log Log4j dalam Java

Maklumat log tidak dipaparkan pada konsol kerana ia telah ditetapkan kepada output kepada fail yang ditentukan: Mengikut laluan yang ditetapkan, kita boleh melihat:

Cara menggunakan log Log4j dalam Java

seperti ini Maklumat masa, maklumat nama program, dan maklumat tentang apa yang berlaku dalam barisan program semuanya direkodkan. Sudah tentu, terdapat banyak lagi format output, anda boleh menyediakannya mengikut keperluan!

Itu sahaja yang dikatakan oleh Xiao Ying tentang log Log4j Selepas melengkapkan langkah-langkah ini, rekod log yang mudah dilengkapkan Tahap output log berikut juga perlu diperhatikan.

Tahap output log:

1.mati: tahap tertinggi, digunakan untuk mematikan semua pembalakan
2.fatal menunjukkan bahawa setiap masa ralat yang serius akan menyebabkan aplikasi menjadi Keluar dari program
3.ralat bermakna walaupun peristiwa ralat dihantar, ia masih tidak menjejaskan operasi sistem
4.amaran menunjukkan bahawa situasi ralat yang berpotensi akan berlaku
5.info Umum pengguna merekodkan proses berjalan program
6.debug biasanya digunakan untuk menyahpepijat rekod maklumat
7.semua adalah tahap paling rendah, digunakan untuk menghidupkan semua rekod log

Atas ialah kandungan terperinci Cara menggunakan log Log4j dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan