Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. log4j - Teknopedia
log4j - Teknopedia
Apache log4j
software
Logo
Logo
GenereLibreria software (non in lista)
SviluppatoreApache Software Foundation
Ultima versione2.25.3 (16 dicembre 2025)
Sistema operativoMultipiattaforma
LinguaggioJava
LicenzaApache License 2.0
(licenza libera)
Sito weblogging.apache.org/log4j/2.x/
Modifica dati su Wikidata · Manuale

In informatica Apache log4j è una libreria Java, originariamente scritta da Ceki Gülcü, ora parte del progetto log4j della Apache Software Foundation, uno dei possibili tool per la gestione dei log in ambiente Java insieme a: logback, SLF4J, le API Java per il logging, Apache Common Logging, tinylog ed altri.

Largamente utilizzata in molte applicazioni Java, negli anni il suo sviluppo è stato rallentato ed è divenuta difficile da manutenere a causa della necessità di restare retrocompatibile con versioni molto vecchie di Java. Ha terminato il proprio ciclo di vita nell'agosto 2015 in favore del nuovo progetto log4j 2 (si veda https://logging.apache.org/log4j/2.x/manual/index.html).

Una qualunque applicazione Java necessita di scrivere un log. Al crescere della complessità dell'applicazione, la quantità di messaggi scritti in uno o più log diventa pure complessa. Nel caso limite, possono insorgere problemi di prestazioni dovuti all'accumularsi di un numero di messaggi eccessivo. Log4j e gli altri possibili tool servono a meglio organizzare questo lavoro.

Il 9 dicembre 2021 è stata riportata una vulnerabilità 0-day, chiamata "Log4Shell"[1], che permette l'esecuzione arbitraria di codice in Log4j. Secondo alcuni si tratta della "singola vulnerabilità più grossa e più critica dell'ultimo decennio"[2].

Livelli di log

[modifica | modifica wikitesto]

La seguente tabella definisce i livelli dei log e i messaggi in log4j in ordine decrescente di severità. La colonna di sinistra indica il livello di log designato e alla destra c'è una breve descrizione.

Livello Descrizione
OFF Il livello più alto possibile, viene usato per disattivare i log.
FATAL Errore importante che causa un prematuro termine dell'esecuzione. Ci si aspetta che questo sia visibile immediatamente all'operatore.
ERROR Un errore di esecuzione o una condizione imprevista. Anche questo deve essere immediatamente segnalato.
WARN Usato per ogni condizione inaspettata o anomalia di esecuzione, che però non necessariamente ha comportato un errore.
INFO Usato per segnalare eventi di esecuzione (esempio: startup/shutdown). Deve essere segnalato ma poi non mantenuto per tanto tempo.
DEBUG Usato nella fase di debug del programma. Viene riportato nel file di log.
TRACE Alcune informazioni dettagliate. Ci si aspetta che venga scritto esclusivamente nei file di log. È stato aggiunto nella versione 1.2.12.

Esempio

[modifica | modifica wikitesto]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC
"http://logging.apache.org/log4j/docs/api/org/apache/log4j/xml/log4j.dtd">
<log4j:configuration>
    <!-- an appender is an output destination, such as e.g. the console or a file;
    names of appenders are arbitrarily chosen-->
    <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern"
                value="%d{ABSOLUTE} %5p %c{1}:%L - %m%n" />
        </layout>
    </appender>
 
    <!-- loggers of category 'org.springframework' will only log messages of level info or higher;
    if you retrieve Loggers by using the class name (e.g. Logger.getLogger(AClass.class))
    and if AClass is part of the springframework.org package, it will belong to this category -->
    <logger name="org.springframework">
        <level value="info"/>
    </logger>

    <!-- everything of spring was set to info but for class PropertyEditorRegistrySupport we do want
debug logging -->
    <logger name="org.springframework.beans.PropertyEditorRegistrySupport">
        <level value="debug"/>
    </logger>
 
    <logger name="org.acegisecurity">
        <level value="info"/>
    </logger>
 
    <root><!-- the root category -->
        <!-- all log messages of level debug or more serious will be logged, unless defined otherwise -->
        <!-- all log messages will be logged to the appender 'stdout', unless defined otherwise -->
        <level value="debug" />
        <appender-ref ref="stdout" />
    </root>
</log4j:configuration>

Note

[modifica | modifica wikitesto]
  1. ↑ What's the Deal with the Log4Shell Security Nightmare?, su Lawfare, 10 dicembre 2021.
  2. ↑ Associated Press, Recently uncovered software flaw 'most critical vulnerability of the last decade', su the Guardian, 11 dicembre 2021.

Altri progetti

[modifica | modifica wikitesto]

Altri progetti

  • Wikimedia Commons
  • Collabora a Wikimedia Commons Wikimedia Commons contiene immagini o altri file su Log4j

Collegamenti esterni

[modifica | modifica wikitesto]
  • Sito ufficiale, su logging.apache.org. Modifica su Wikidata
  • Log4j / Log4j (altra versione), su packages.debian.org. Modifica su Wikidata
  • Repository sorgenti di Log4j, su github.com. Modifica su Wikidata
  • Breve introduzione a log4j, su logging.apache.org.
  • Manuale completo, su qos.ch. URL consultato il 1º giugno 2009 (archiviato dall'url originale il 9 giugno 2007).
  • Log4View, su log4view.com.
  • Una semplice dimostrazione real-time, su gmdx.net. URL consultato il 1º giugno 2009 (archiviato dall'url originale il 25 maggio 2009).

Port

[modifica | modifica wikitesto]
  • dlib C++ library Homepage - Un port per C++
  • Log4cxx Homepage - Apache port per C++
  • Log4plsql HomePage - Un port per Oracle PL/SQL
  • Log4perl - Un port per Perl
  • logging - Un sistema di logging per Python ispirato a log4j.
  • Log4r - Un sistema di logging per Ruby ispirato a log4j.
  • log4php un port per PHP
  • log4sh Archiviato il 23 gennaio 2009 in Internet Archive. un port per le principali Unix shells: sh, bash, dash and ksh
V · D · M
Apache Software Foundation
Progetti principaliAccumulo · ActiveMQ · Ambari · Ant · Aries · Apache HTTP Server · APR · Avro · Axis · Axis2 · Beam · Bloodhound · Brooklyn · Buildr · Calcite · Camel · Cassandra · Cayenne · Chemistry · CloudStack · Cocoon · Cordova · CouchDB · cTAKES · CXF · Derby · Directory · Drill · Empire-db · Felix · Flex · Flink · Flume · Geronimo · Gora · Gump · Hadoop · HBase · Hive · Jackrabbit · James · Jini · JMeter · Kafka · Kudu · Kylin · Lucene · Mahout · Maven · MINA · mod_perl · MyFaces · NetBeans · Nutch · OFBiz · Oozie · OpenEJB · OpenJPA · OpenNLP · OpenOffice · PDFBox · Parquet · Phoenix · POI · Pig · Pivot · Qpid · Roller · Samza · ServiceMix · Shiro · Sling · Solr · Spark · Stanbol · Storm · SpamAssassin · Struts 1 · Struts 2 · Subversion · SystemML · Tapestry · Thrift · Tika · Tomcat · Traffic Server · UIMA · Velocity · Wicket · Xalan · Xerces · ZooKeeperASF logo
Apache CommonsBCEL · BSF · Daemon · Jelly · Logging
Apache IncubatorNuttX · SINGA · Trafodion · XAP
Altri progettiBatik · Chainsaw · FOP · Ivy · Log4j
Apache AtticAbdera · Apex · AxKit · Beehive · Bluesky · iBATIS · Cactus · Click · Continuum · Deltacloud · Excalibur · Forrest · Hama · Harmony · HiveMind · Jakarta · Lenya · Marmotta · ODE · Shale · Shindig · Slide · Sqoop · stdcxx · Tuscany · Wave · Wink · XMLBeans
LicenzeLicenza Apache
Categoria
  Portale Informatica: accedi alle voci di Teknopedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=Log4j&oldid=147682237"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022