如何在Ubuntu上配置Java日志输出
在Ubuntu上配置Java日志:java.util.logging需创建logging.properties,支持控制台与文件输出;Log4j2需添加依赖并配置log4j2.xml,功能更灵活。小项目选前者,复杂需求推荐后者。
在Ubuntu上配置Ja va应用程序的日志输出,其实没那么玄乎。你手边至少有两个成熟选择:Ja va自带的ja va.util.logging,以及业界用得更多的Log4j。下面直接上干货,两个方案都拆开讲清楚。

使用ja va.util.logging
先来看Ja va原生的日志框架,它不需要额外引入依赖,开箱即用。
-
创建logging.properties配置文件
在你的项目资源目录下新建一个logging.properties,用来指定日志要输出到哪、格式长什么样。内容可以参考下面这样:handlers= ja va.util.logging.FileHandler, ja va.util.logging.ConsoleHandler .level= INFO ja va.util.logging.FileHandler.pattern = %h/myapp.log ja va.util.logging.FileHandler.limit = 50000 ja va.util.logging.FileHandler.count = 1 ja va.util.logging.FileHandler.formatter = ja va.util.logging.SimpleFormatter ja va.util.logging.ConsoleHandler.level = INFO ja va.util.logging.ConsoleHandler.formatter = ja va.util.logging.SimpleFormatter这里把日志同时写到了控制台和文件(放在用户主目录下的
myapp.log),文件大小限制为50KB,超过就覆盖。 -
在Ja va代码中加载配置
在应用的启动阶段,通过LogManager把上面那个配置文件读进来:import ja va.util.logging.LogManager; public class MyApp { static { try { LogManager.getLogManager().readConfiguration( MyApp.class.getResourceAsStream("/logging.properties")); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { Logger logger = Logger.getLogger(MyApp.class.getName()); logger.info("Application started."); } }注意配置文件要放在编译后能访问到的类路径下(比如
src/main/resources)。这样启动后,所有INFO级别及以上的日志都能按预设格式输出。
使用Log4j
如果你需要更灵活的输出控制、异步日志、按大小滚动等高级功能,Log4j 2几乎是标配。
-
添加Ma ven依赖
在pom.xml里引入Log4j的核心模块:org.apache.logging.log4j log4j-core 2.14.1 如果你用Gradle或其他构建工具,原理一样。
-
创建log4j2.xml配置文件
在src/main/resources下新建log4j2.xml,配置两个Appender:一个输出到控制台,一个输出到文件。这里日志格式包含了时间、日志级别、类名、行号以及消息本身,方便后期排查。
-
在Ja va代码中使用Log4j
直接在类里声明一个静态Logger,然后就可以愉快地记录了:import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; public class MyApp { private static final Logger logger = LogManager.getLogger(MyApp.class); public static void main(String[] args) { logger.info("Application started."); } }Log4j会自动加载类路径下的
log4j2.xml,不需要额外的读取代码。
两种方案都可以在Ubuntu上稳定运行。选哪个?项目规模小、不想引入外部依赖,就用ja va.util.logging;如果需要更多功能和更细粒度的控制,Log4j 2是更好的选择。配置文件写好后,直接运行Ja va进程,日志就会按你设定的规则乖乖输出。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















