当前位置: 首页 > news >正文

[JAVA]MyLogger

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.*;/*** 可以自已定义日志打印格式,这样看起来比较方便些**/
class MyFormatter extends Formatter
{@Overridepublic String format(LogRecord arg0){//创建StringBuilder对象来存放后续需要打印的日志内容StringBuilder builder = new StringBuilder();//获取时间SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss.SSS");Date now = new Date();String dateStr = simpleDateFormat.format(now);builder.append("[");builder.append(dateStr);builder.append(" ");//拼接日志级别builder.append(arg0.getLevel()).append(" ");builder.append(arg0.getSourceClassName()).append(" ");//拼接方法名//builder.append(arg0.getSourceMethodName()).append(" ");StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();String line = stackTrace[8].toString();for (int i = 0; i < stackTrace.length; i++) {//System.out.println(stackTrace[i]);}//String lineNumber = line.substring(line.indexOf(":") + 1, line.length() - 1);String lineNumber = line.substring(line.indexOf(":") + 1, line.length() - 1);//拼接方法名builder.append(line).append("] ");//拼接日志内容builder.append(arg0.getMessage());//日志换行builder.append("\r\n");return builder.toString();}
}public class MyLogger {static Logger logger;static  {logger = Logger.getLogger(MyLogger.class.getName());logger.setUseParentHandlers(false);//如果需要将日志文件写到文件系统中,需要创建一个FileHandler对象Handler consoleHandler = new ConsoleHandler();//创建日志格式文件:本次采用自定义的FormatterconsoleHandler.setFormatter(new MyFormatter());//将FileHandler对象添加到Logger对象中logger.addHandler(consoleHandler);}public static Logger getLogger() {return logger;}public static void main(String[] args) throws SecurityException, IOException {Logger logger = Logger.getLogger(MyLogger.class.toString());logger.info("123");StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();System.out.println(stackTrace.length);for (StackTraceElement s: stackTrace) {System.out.println(s.toString());}/*Logger myLogger = MyLogger.getLogger();myLogger.info("1123");-----------------------------------
©著作权归作者所有:来自51CTO博客作者mob64ca12e86bd4的原创作品,请联系作者获取转载授权,否则将追究法律责任java logger打印错误行号https://blog.51cto.com/u_16213398/7623080myLogger.info("11");*/}}
import java.util.logging.Logger;public class CLASS_A {Logger logger = MyLogger.getLogger();void run(){logger.info("run");}public static void main(String[] args) {CLASS_A a = new CLASS_A();a.run();a.logger.info("11");}
}

相关文章:

[JAVA]MyLogger

import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.logging.*;/*** 可以自已定义日志打印格式&#xff0c;这样看起来比较方便些**/ class MyFormatter extends Formatter {Overridepublic String format(LogRecord ar…...

玩转OCR | 腾讯云智能结构化OCR初次体验

目录 一、什么是OCR&#xff08;需要了解&#xff09; 二、产品概述与核心优势 产品概述 智能结构化能做什么 举例说明&#xff08;选看&#xff09; 1、物流单据识别 2、常见证件识别 3、票据单据识别 4、行业材料识别 三、产品特性 高精度 泛化性 易用性 四、…...

记一次 dockerfile 的循环依赖错误

文章目录 1. 写在最前面1.1 具体循环依赖的例子 2. 报错的位置2.1 代码快速分析2.2 代码总结2.3 关于 parser 的记录 3. 碎碎念 1. 写在最前面 笔者在使用 dockerfile 多阶段构建的功能时&#xff0c;写出了一个「circular dependency detected on stage: xx」的错误。 解决方…...

Trimble天宝X9三维扫描仪为建筑外墙检测提供了全新的解决方案【沪敖3D】

随着城市化进程的快速推进&#xff0c;城市高层建筑不断增多&#xff0c;对建筑质量的要求也在不断提高。建筑外墙检测&#xff0c;如平整度和垂直度检测&#xff0c;是衡量建筑质量的重要指标之一。传统人工检测方法不仅操作繁琐、效率低下&#xff0c;还难以全面反映墙体的真…...

【MySQL】深度学习数据库开发技术:使用CC++语言访问数据库

**前言&#xff1a;**本节内容介绍使用C/C访问数据库&#xff0c; 包括对数据库的增删查改操作。 主要是学习一些接口的调用&#xff0c; 废话不多说&#xff0c; 开始我们的学习吧&#xff01; ps:本节内容比较容易&#xff0c; 友友们放心观看哦&#xff01; 目录 准备mysql…...

LabVIEW化工实验室设备故障实时监测

化工实验室中&#xff0c;各类设备的运行状态直接影响实验的精度与安全性。特别是重要分析仪器的突发故障&#xff0c;可能导致实验中断或数据失效。为了实现设备运行状态的实时监控与故障快速响应&#xff0c;本文提出了一套基于LabVIEW的解决方案&#xff0c;通过多参数采集、…...

单例模式懒汉式、饿汉式(线程安全)

饿汉式单线程安全吗 饿汉式单例&#xff08;Eager Singleton&#xff09;是线程安全的。这种实现方式在类加载时就创建了单例实例&#xff0c;因此在多线程环境中&#xff0c;不存在多个线程同时创建实例的问题。 饿汉式单例的实现 以下是一个饿汉式单例的示例&#xff1a; …...

Cursor登录按钮点击没反应

问题 系统&#xff1a;Windows11 Cursor&#xff1a;Cursor 0.44.9 当安装Cursor打开进行登录时&#xff0c;点击Sign in没反应 解决方案 1.打开window11的设置 2.点击应用中的默认应用 3.在设置应用程序的默认值中搜索Google&#xff08;没有Google浏览器的尝试下载一个&a…...

论文实现:Reactive Nonholonomic Trajectory Generation via Parametric Optimal Control

1. 多项式螺旋 曲率&#xff1a; κ ( s ) a 0 a 1 s a 2 s 2 a 3 s 3 a 4 s 4 a 5 s 5 \begin{align} \kappa(s) a_0 a_1s a_2s^2 a_3s^3 a_4s^4 a_5s^5 \end{align} κ(s)a0​a1​sa2​s2a3​s3a4​s4a5​s5​​ 机器人朝向&#xff1a; θ ( s ) a 0 s a 1 …...

基于单片机中药存放环境监测系统的实现

基于单片机中药存放环境监测系统的实现 项目开发背景 随着现代中药的广泛应用&#xff0c;中药材的存储环境对其质量有着至关重要的影响。温湿度、烟雾、火灾等环境因素&#xff0c;若不加以控制&#xff0c;将会导致中药材失效或变质。因此&#xff0c;设计一个基于单片机的…...

九垠赢+商业管理系统 Common.ashx 文件上传致RCE漏洞复现

0x01 产品简介 九垠赢+商业管理系统是基于互联网技术的进销存管理软件,适用于新零售背景下各种业态的线上线下一体化的商超经营管理。赢+ERP以商业管理系统为底座,融合了多种软、硬件解决方案,实现了从企业、供应商、三方平台到顾客等日常管理的全线数字化、智能化和移动化…...

速盾:服务器CDN加速解析的好处有哪些呢?

随着互联网应用的普及&#xff0c;越来越多的企业开始关注如何提升网站的访问速度和用户体验。为了实现这一目标&#xff0c;许多企业选择使用CDN&#xff08;内容分发网络&#xff09;来加速网站的内容分发。CDN通过在全球范围内分布多个节点&#xff0c;将内容缓存到离用户最…...

C++ 设计模式:备忘录模式(Memento Pattern)

链接&#xff1a;C 设计模式 链接&#xff1a;C 设计模式 - 状态模式 备忘录模式&#xff08;Memento Pattern&#xff09;是一种行为设计模式&#xff0c;它允许在不破坏封装性的前提下捕获和恢复对象的内部状态。这个模式在需要保存和恢复对象状态的场景中非常有用&#xff…...

Android 系统 Activity 系统层深度定制的方法、常见问题以及解决办法

Android 系统 Activity 系统层深度定制的方法、常见问题以及解决办法 目录 引言Activity 系统层概述Activity 系统架构图Activity 系统层深度定制的方法 4.1 自定义 Activity 生命周期4.2 自定义 Activity 启动流程4.3 自定义 Activity 转场动画4.4 自定义 Activity 窗口管理4…...

PDF怎么压缩得又小又清晰?5种PDF压缩方法

PDF 文件在日常办公与学习中使用极为频繁&#xff0c;可想要把它压缩得又小又清晰却困难重重。一方面&#xff0c;PDF 格式本身具有高度兼容性&#xff0c;集成了文字、图像、矢量图等多样元素&#xff0c;压缩时难以兼顾不同元素特性&#xff0c;稍不注意&#xff0c;文字就会…...

YK人工智能(三)——万字长文学会torch深度学习

2.1 张量 本节主要内容&#xff1a; 张量的简介PyTorch如何创建张量PyTorch中张量的操作PyTorch中张量的广播机制 2.1.1 简介 几何代数中定义的张量是基于向量和矩阵的推广&#xff0c;比如我们可以将标量视为零阶张量&#xff0c;矢量可以视为一阶张量&#xff0c;矩阵就是…...

关于CISP报名费用详情

CISP即“注册信息安全专业人员”&#xff0c;是中国信息安全测评中心实施的国家认证项目&#xff0c;旨在培养信息安全领域的专业人才。对于有意报考CISP的考生而言&#xff0c;了解报名考试费用是备考过程中不可或缺的一环。 CISP的报名考试费用主要包括培训费用、考试费用、…...

vim 按下esc后取消高亮

配置 ideavimrc文件 " 按下 Esc 键时自动取消高亮 " 在普通模式下按下 Esc 键取消高亮 nnoremap <Esc> :nohlsearch<CR> " 在插入模式下按下 Esc 键取消高亮 inoremap <Esc> <Esc>:nohlsearch<CR>" 额外&#xff1a;当退出…...

SwiftUI:多语言实现富文本插值

实现的UI需求&#xff1a; 要求&#xff1a; 英文显示&#xff1a;3068 people have joined this plan today! 中文显示&#xff1a;今日有 3068 人已加入此计划&#xff01; 实现代码&#xff1a; Text(AttributedString(localized:"**\(payPeoples)** people have joi…...

操作系统基础

概念 控制和管理操作系统软件和硬件 用户观点&#xff1a;用户和计算机之间的接口 基本概念 特征 并发&#xff0c;共享&#xff0c;虚拟&#xff0c;异步 功能 处理机管理&#xff0c;存储器管理&#xff0c;文件管理&#xff0c;设备管理 作为用户和硬件接口 命令接口&am…...

CPU性能优化框架:Cyber Engine Tweaks的线程调度优化技术解析与实践指南

CPU性能优化框架&#xff1a;Cyber Engine Tweaks的线程调度优化技术解析与实践指南 【免费下载链接】CyberEngineTweaks Cyberpunk 2077 tweaks, hacks and scripting framework 项目地址: https://gitcode.com/gh_mirrors/cy/CyberEngineTweaks 引言&#xff1a;夜之城…...

终极指南:3分钟解锁百度网盘SVIP下载特权,让下载速度飙升70倍!

终极指南&#xff1a;3分钟解锁百度网盘SVIP下载特权&#xff0c;让下载速度飙升70倍&#xff01; 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在…...

Adrenaline终极指南:解锁PSP模拟器的完整潜力

Adrenaline终极指南&#xff1a;解锁PSP模拟器的完整潜力 【免费下载链接】Adrenaline Custom Firmware 6.61 Adrenaline for the PSP Emulator 项目地址: https://gitcode.com/gh_mirrors/adr/Adrenaline 你是否曾为PSP模拟器的功能限制而烦恼&#xff1f;想要在PS Vit…...

SecGPT-14B多场景:安全设备日志归一化、威胁情报摘要生成、钓鱼邮件识别

SecGPT-14B多场景实战&#xff1a;安全设备日志归一化、威胁情报摘要生成、钓鱼邮件识别 在网络安全领域&#xff0c;每天面对海量的安全日志、繁杂的威胁情报和层出不穷的钓鱼邮件&#xff0c;安全分析师常常感到力不从心。手动处理这些信息不仅耗时耗力&#xff0c;还容易遗…...

新手入门:在快马平台用基础代码实现个人EndNote

最近在整理学术资料时&#xff0c;发现需要频繁记录和分类文献信息。作为编程新手&#xff0c;想尝试自己做个简单的网页工具来管理这些内容。通过InsCode(快马)平台的智能生成功能&#xff0c;居然用基础代码就实现了一个迷你EndNote&#xff0c;整个过程特别适合像我这样的初…...

终极指南:10分钟搞定网易云音乐NCM加密文件转换

终极指南&#xff1a;10分钟搞定网易云音乐NCM加密文件转换 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 还在为网易云音乐的加密NCM文件无法在其他播放器使…...

小白也能玩转零售AI:Ostrakon-VL-8B快速上手,实测效果超预期

小白也能玩转零售AI&#xff1a;Ostrakon-VL-8B快速上手&#xff0c;实测效果超预期 1. 零售AI新选择&#xff1a;Ostrakon-VL-8B简介 1.1 什么是Ostrakon-VL-8B&#xff1f; Ostrakon-VL-8B是一款专为零售和餐饮行业设计的智能视觉理解系统。简单来说&#xff0c;它就像是一…...

WordPress开发工具链配置:IDE集成与CI/CD自动化

WordPress开发工具链配置&#xff1a;IDE集成与CI/CD自动化 【免费下载链接】WordPress-Coding-Standards PHP_CodeSniffer rules (sniffs) to enforce WordPress coding conventions 项目地址: https://gitcode.com/gh_mirrors/wo/WordPress-Coding-Standards WordPres…...

C 语言程序调用 Pixel Dream Workshop?通过 REST API 实现跨语言集成

C 语言程序调用 Pixel Dream Workshop&#xff1f;通过 REST API 实现跨语言集成 1. 引言&#xff1a;当传统语言遇上AI绘画 在嵌入式系统和传统C语言项目中集成AI能力&#xff0c;听起来像是把两个不同时代的产物硬凑在一起。但实际情况是&#xff0c;这种组合正在创造令人惊…...

GLM-OCR系统资源优化:C盘清理与显存高效利用技巧

GLM-OCR系统资源优化&#xff1a;C盘清理与显存高效利用技巧 你是不是也遇到过这种情况&#xff1a;兴致勃勃地部署好GLM-OCR&#xff0c;准备大展身手&#xff0c;结果没跑几天&#xff0c;系统就弹窗提示“C盘空间不足”&#xff0c;或者程序运行越来越慢&#xff0c;甚至直…...