logo

Log4J mežizstrādes līmeņi

Reģistrācijas līmeņi tiek izmantoti, lai klasificētu ierakstus žurnāla failā. Bet tie tiek klasificēti ļoti specifiskā veidā, t.i., pēc steidzamības. Līmenis ļauj atdalīt šādus informācijas veidus:

  • Meklēšanas laikā varat filtrēt savus žurnālfailus.
  • Varat pārvaldīt reģistrētās informācijas apjomu.

Sistēmā sniegtās informācijas apjomu un veidu un notikumu žurnālus kontrolē log4j līmeņa iestatījumi konfigurācijas failā. Katram žurnāla ziņojumam ir pievienots ziņojuma līmenis.

Reģistrācijas līmeņi ir piemērs org.apache.log4j.Level klasē.

Log4j ir šādi reģistrēšanas līmeņi:

Žurnāla līmenis Apraksts
VISI Šis līmenis ieslēdz visus reģistrēšanas līmeņus. Tas ietver jūsu definētos pielāgotos reģistrēšanas līmeņus. Kad šis ir konfigurēts un līmeņi vispār netiek ņemti vērā, visi papildinājumi sāks ieliet žurnāla notikumus žurnālfailos.
ATKLĀŠANA Atkļūdošana tiek bieži izmantota lietojumprogrammas atkļūdošanai izstrādes laikā. Katrs žurnāla ziņojums tiks parādīts žurnālfailiem, kad šis līmenis ir iestatīts. Tas galvenokārt pieder izstrādātājiem.
INFORMĀCIJA INFO reģistrēšanas līmenis tiek izmantots, lai ierakstītu ziņojumus par ikdienas lietojumprogrammas darbību. Sistēmas administratori reāllaikā skatās informācijas žurnālus, lai pārliecinātos, kas pašlaik notiek sistēmā un vai ir kādas problēmas normālā plūsmā.
BRĪDINĀT BRĪDINĀJUMA žurnāla līmenis tiek izmantots, lai norādītu, ka jums varētu būt problēma un ka esat atklājis neparastu situāciju. Varbūt jūs pieprasījāt pakalpojuma izsaukšanu, un tas vairākas reizes neizdevās, pirms tika izveidots savienojums ar automātisku atkārtotu mēģinājumu. Tas ir negaidīts un neparasts, taču reāls kaitējums netika nodarīts, un nav zināms, vai problēma saglabāsies vai atkārtosies. Kādam vajadzētu izmeklēt brīdinājumus.
KĻŪDA KĻŪDAS žurnāla līmenis tiek izmantots, lai apzīmētu nopietnu problēmu, kas jums nekavējoties jāizmeklē. Nav tik nopietna kā FATAL, bet joprojām ir problēma. Tas vienkārši nozīmē, ka jūsu pieteikums ir sasniedzis patiešām nevēlamu stāvokli. Piemēram, neparedzēta formatēta ievade, datu bāzes nepieejamība.
FATAL FATAL žurnāla līmenis, tāpat kā ERROR, norāda uz problēmu. Bet atšķirībā no ERROR tas apzīmē ļoti nopietnu kļūdas notikumu. Parastā dienā jūs īpaši neuzskatīsit par viņu klātbūtni, taču, kad tās parādās, tas signalizē par ļoti sliktām ziņām, pat par nāves pieteikšanos.
IZSLĒGTS Šis ir augstākais iespējamais rangs, un tas ir paredzēts, lai izslēgtu reģistrēšanu.
TRACE Tas nesen tika ieviests versijā 1.2, un tajā ir iekļauta plašāka informācija par atkļūdošanas līmeņa žurnāliem.

Kā iestatīt žurnāla līmeņus?

Iestatiet žurnāla līmeni log4j.properties

 log4j.rootLogger=DEBUG, consoleAppender log4j.appender.consoleAppender=org.apache.log4j.ConsoleAppender log4j.appender.consoleAppender.layout=org.apache.log4j.PatternLayout log4j.appender.consoleAppender.layout.ConversionPattern=[%t] %-5p %c %x - %m%n #Log info messages for package 'com.javatpoint.web.controller' log4j.logger.com.javatpoint.web.controller=INFO, consoleAppender 

Iestatiet žurnāla līmeni log4j.xml

 

Kā darbojas žurnālu līmeņi?

Mežizstrādes līmeņu darbība patiesībā ir ļoti vienkārša. Izpildes laikā lietojumprogrammas kods izveidos reģistrēšanas pieprasījumus, kuriem būs līmenis. Tajā pašā laikā reģistrēšanas sistēmai ir konfigurēts žurnāla līmenis, kas darbojas kā slieksnis. Ja pieprasījuma līmenis ir konfigurētajā vai augstākā līmenī, tas tiek reģistrēts konfigurētajā mērķī. Ja nē, tas ir liegts. Tas ir vienkārši.

Uzskatīsim to par šādu līmeņu rangu secību:

 ALL <trace < debug info warn error fatal off pre> <p>So if, for instance, the logging framework level is set to WARN, requests with any of the levels WARN, FATAL, and ERROR will be accepted, while the rest will be denied.</p> <img src="//techcodeview.com/img/log4j-tutorial/51/log4j-logging-levels.webp" alt="Log4J Logging Levels"> <p>In the above diagram, the vertical header displays the Level of the LogEvent, while the horizontal header shows the Level associated with the appropriate logging configuration.</p> <p>For the first column, you will see how the log works in each level. For example, for WARN, (FATAL, ERROR, and WARN) will be visible. For OFF, nothing will be visible.</p> <h3>Log4j Level Example</h3> <p> <strong>Configuration File:</strong> </p> <pre> # Define the root logger with appender file log = /usr/home/log4j log4j.rootLogger = WARN, FILE # Define the file appender log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=${log}/log.out # Define the layout for file appender log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.conversionPattern=%m%n </pre> <p> <strong>Java Program:</strong> </p> <pre> import org.apache.log4j.*; public class LogClass { private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class); public static void main(String[] args) { log.trace(&apos;Trace Message!&apos;); log.debug(&apos;Debug Message!&apos;); log.info(&apos;Info Message!&apos;); log.warn(&apos;Warn Message!&apos;); log.error(&apos;Error Message!&apos;); log.fatal(&apos;Fatal Message!&apos;); } } </pre> <p>Now compile and run the above program and we would get the following output in c:/usr/home/log4j/log.out file:</p> <pre> Warn Message! Error Message! Fatal Message! </pre> <hr></trace>

Java programma:

 import org.apache.log4j.*; public class LogClass { private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class); public static void main(String[] args) { log.trace(&apos;Trace Message!&apos;); log.debug(&apos;Debug Message!&apos;); log.info(&apos;Info Message!&apos;); log.warn(&apos;Warn Message!&apos;); log.error(&apos;Error Message!&apos;); log.fatal(&apos;Fatal Message!&apos;); } } 

Tagad apkopojiet un palaidiet iepriekš minēto programmu, un mēs iegūsim šādu izvadi failā c:/usr/home/log4j/log.out:

 Warn Message! Error Message! Fatal Message!