java日志使用

一些日志将被机器消耗并永久保存。

其他日志仅用于调试和供人类使用。 在后一种情况下,您通常要确保您不会产生太多的日志,尤其是不会产生太宽的日志,因为一旦行长超过一定大小( 例如,此Eclipse bug ),许多编辑器和其他工具就会出现问题。

字符串操作曾经是Java的主要难题,它具有许多繁琐的编写循环和分支等。Java8不再具有这种功能!

以下truncate方法会将字符串中的所有行截断为一定长度:

public String truncate(String string) {return truncate(string, 80);
}public String truncate(String string, int length) {return Seq.of(string.split("\n")).map(s -> StringUtils.abbreviate(s, 400)).join("\n");
}

上面的示例使用jOOλ0.9.4和Apache Commons Lang ,但是您可以使用香草Java 8实现相同的效果:

public String truncate(String string) {return truncate(string, 80);
}public String truncate(String string, int length) {return Stream.of(string.split("\n")).map(s -> s.substring(0, Math.min(s.length(), length))).collect(Collectors.joining("\n"));
}

上面将日志截断为长度10时,上面的程序将产生:

输入项

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim id est laborum.

输出量

Lorem ipsum dolor...
incididunt ut lab...
nostrud exercitat...
Duis aute irure d...
fugiat nulla pari...
culpa qui officia...

祝您登录愉快!

翻译自: https://www.javacodegeeks.com/2015/01/using-java-8-to-prevent-excessively-wide-logs.html

java日志使用

java日志使用_使用Java 8防止日志过宽相关推荐

  1. java假死_分析java进程假死

    一.引言 1.编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照. 2.编写背景 最近服务器发现tomcat的应用会偶尔出现无法访问的情况.经过一段时间的观察最近又发现 ...

  2. java 持续交付_【Java架构:持续交付】一篇文章搞掂:Jenkins

    1.1.使用yum安装JDK a.检查系统是否有安装open-jdk rpm -qa |grep java rpm -qa |grep jdk rpm -qa |grep gcj 如果没有输入信息表示 ...

  3. java正则表达式 匹配()_学习Java正则表达式(匹配、替换、查找)

    import java.util.ArrayList; import java.util.regex.Matcher; import java.util.regex.Pattern; public c ...

  4. 纯java分布式内存数据库_最新Java岗面试清单:分布式+Dubbo+线程+Redis+数据库+JVM+并发...

    最近可能有点闲的慌,没事就去找面试面经,整理了一波面试题.我大概是分成了Java基础.中级.高级,分布式,Spring架构,多线程,网络,MySQL,Redis缓存,JVM相关,调优,设计模式,算法与 ...

  5. java核心教程_核心Java教程

    java核心教程 Welcome to Core Java Tutorial. I have written a lot on Core Java and Java EE frameworks. Th ...

  6. java 包命名_【Java】包的命名规则

    命名规范 包:所有单词的字母小写,之后每个单词用-隔开,如 org.nemo.demo 常量:所有单词的字母大写,之后每个单词用_隔开,如 FLAG 类:所有单词的首字母大写,如 TestJava p ...

  7. java 图片效果_使用Java进行图片底片化效果处理

    使用java代码读取图片,并进行底片化处理 util importjava.awt.image.BufferedImage;importjava.io.File;importjava.util.Arr ...

  8. java array缓存_有java数组

    [JAVA零基础入门系列]Day10 Java中的数组 [JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 D ...

  9. java 分割一个_分割java

    [java]分割字符串工具类,霸气 jdk自带的 java 分割字符串,分割string,可以根据多个条件去分割.比如逗号,分号,逗号或者分号. 比如一个字符串:"abc,def;gh,ij ...

  10. java 日历记事本_用Java实现日历记事本.doc

    用Java实现日历记事本 1. 实验目的 掌握RandomAccessFile类的使用:掌握字符输入.输出流和缓冲输入.输出流的使用. 2. 实验要求 实验前,应事先熟悉相关知识点,拟出相应的实验操作 ...

最新文章

  1. 百度云满速下载(转)
  2. 特斯拉「断网」致500名车主被锁车外,最长5小时,网友:有些东西就不该经过网络...
  3. Nginx安装、配置及使用总结
  4. Ubuntu20.04中安装shutter
  5. 微信小程序 与后台服务器交互,微信小程序 与后台交互----传递和回传时间
  6. 蒙特卡洛法—非均匀随机数的产生
  7. 05 Python - Python运行
  8. 发布HTML 7-3
  9. html引用单文件组件,vue之单文件组件 纯网页方式引入
  10. 分析 120 年的 Kaggle 数据,中国何时站上奥运之巅?
  11. 【echarts】 tooltip显示图片
  12. 或许是比力扣 leetcode 更好的选择?推荐两个编程算法宝藏网站
  13. maven 简单实用教程
  14. Fast-RTPS初体验
  15. Intellij IDEA快捷键大全(超详细)
  16. 20145322何志威 Exp7 网络欺诈技术防范
  17. [-NDK 导引篇 -] 在NDK开发之前你应知道的东西
  18. 滞回比较器 万字形状
  19. 关于vs2022设置默认浏览器
  20. 初学pwn-攻防世界(get_shell)

热门文章

  1. SP1811-Longest Common Substring【SAM】
  2. Comet OJ-栈的数据结构题【线段树】
  3. P2467-[SDOI2010]地精部落【dp】
  4. P2217-[HAOI2007]分割矩阵【dfs,记忆化搜索】
  5. P2796-Facer的程序【dp】
  6. Loj2687,jzoj3320-文本编辑器【线头dp】
  7. jzoj3518-进化序列(evolve)【位运算】
  8. 2019.01.28【NOIP普及组】模拟赛C组总结
  9. Sentinel(五)之流量控制
  10. 键值存储之外,Redis还有这些用法