Java 日志中找不到自定义线程的原因,线程名显示不全

Posted 抓手

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 日志中找不到自定义线程的原因,线程名显示不全相关的知识,希望对你有一定的参考价值。

原因是日志中使用固定长度格式展示线程名,长度固定为15位字符,在[]里面。

当线程名超过15位时会截取,删除最前面的字符直到线程名等于15位字符。
eg:线程名为xzhThreadExecutor-0,会变为[hreadExecutor-0]

当线程名不足15位时会补全,自动填充空字符直到达到15位字符。
eg:线程名为xzhThread-0,会变为[    xzhThread-0]

所以定义线程名时,最好不要超过15位字符,不然就展示不全。

下面是虚拟机日志信息,[]里面就是线程名,都是15位:

2022-11-14 09:53:57.605  INFO 17564 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path '/xx'
2022-11-14 09:53:57.610  INFO 17564 --- [           main] o.s.c.c.s.ConsulServiceRegistry          : Registering service with consul: NewServiceid=xx
2022-11-14 09:53:57.926  INFO 17564 --- [nio-8596-exec-1] o.a.c.c.C.[.[localhost].[/bop-oms]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2022-11-14 09:53:57.926  INFO 17564 --- [nio-8596-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2022-11-14 09:53:57.930  INFO 17564 --- [nio-8596-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 4 ms
2022-11-14 09:53:58.358  INFO 17564 --- [           main] com.bzcst.bop.oms.Application            : Started Application in 10.032 seconds (JVM running for 12.193)
2022-11-14 09:53:58.629  INFO 17564 --- [3)-192.168.1.40] com.zaxxer.hikari.HikariDataSource       : DatebookHikariCP - Starting...
2022-11-14 09:53:58.888  INFO 17564 --- [3)-192.168.1.40] com.zaxxer.hikari.HikariDataSource       : DatebookHikariCP - Start completed.

以上是关于Java 日志中找不到自定义线程的原因,线程名显示不全的主要内容,如果未能解决你的问题,请参考以下文章

Apache Zeppelin:线程“main”中的异常 java.lang.RuntimeException:在 zeppelin 网页中找不到 core-site.xml

在自定义 Java AWS 应用程序中找不到类的序列化程序

Java 8 并行流中的自定义线程池

在 Centos 7 中找不到可用的 POSIX 线程

Java应用线程泄漏原因分析与避免

java 中 “找不到符号”的错误