关于打印日志几个方法的列举

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import org.junit.Test;

public class ExceTest {
    
    @Test
    public static void main(String[] args){
        try {
//            throw new Exception("发生异常");
            Integer.valueOf("a");
            
        } catch (Exception e) {
            //只会获得具体的异常名称. 比如说NullPoint 空指针,就告诉你说是空指针...
            System.out.println("e.getMessage 异常信息:"+e.getMessage());
            
            //来提供一个针对地区方言的错误信息
            System.out.println("e.getLocalizedMessage 异常信息:"+e.getLocalizedMessage());
            
            //e.getCause()有可能返回null
            System.out.println("e.getCause 异常信息:"+e.getCause().getMessage());    
            
            try {
                ByteArrayOutputStream buf = new java.io.ByteArrayOutputStream();
                //会打出详细异常,异常名称,出错位置,便于调试用,printStackTrace 有三个重载的方法
                e.printStackTrace(new java.io.PrintWriter(buf, true));
                String expMessage = buf.toString();
                System.out.println("e.printStackTrace 异常信息: "+expMessage);
                buf.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            }
            
        }
    }
}

时间: 2024-08-01 10:46:06

关于打印日志几个方法的列举的相关文章

使用log4j2打印Log,log4j不能打印日志信息,log4j2不能打印日志信息,log4j和logj2,idea控制台信息乱码(文末)

说来惭愧,今天就写了个"hello world",了解了一下log4j的日志. 本来是想在控制台打印个log信息,也是遇到坎坷重重,开始也没去了解log4j就来使用,log4j配置文件开始用的log4j.properties,结果控制台一直打印ERROR StatusLogger No log4j2 configuration file found.也就是Log4j2配置文件没找到的意思. 我就把log4j.properties文件名改成log4j2.properties,结果不报错了

iOS 打印日志的保存 (一)

当我们真机调试app的时候,作为开发人员的我们可以很方便的通过Xcode的debug area查看相关的打印信息.而测试人员在对app进行测试的时候,一旦出现了crash,这时我们就需要把相关的打印信息保存下来, 以便后面进行查看追踪crash原因.在这里我们可以将打印信息写入沙盒系统中.不多说了,直接上代码. 1 - (void)redirectNSlogToDocumentFolder 2 { 3 if (isatty(STDOUT_FILENO)) 4 { 5 NSLog(@"真机调试,无

dubbo 获取application和ip 打印日志,以便排查问题.

(1) 服务消费方 dubbo 获取application和ip 打印日志,以便排查问题.. 让对方有针对的去具体某个机器上去排查. xxxService.xxx(); // 远程调用 boolean isConsumerSide = RpcContext.getContext().isConsumerSide(); // 本端是否为消费端,这里会返回true String serverIP = RpcContext.getContext().getRemoteHost(); // 获取当前线程

用C11打印日志

以下是使用C11特性打印日志的方法 #include <stdio.h> #include <time.h> static const int MAX_FILE_NAME_LEN = 512; // 文件名长度最大值 int main(int argc, char * argv[]) { // 获取当前时间 time_t seconds_number = time(NULL); tm local_time; localtime_s(&local_time, &sec

Log4j配置的经典总结,打印日志文件,日志存库

    一.介绍 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制 日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务 器.NT的事件记录器.UNIX Syslog守护进程等:我们也可以控制每一条日志的输出格式:通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程. Log4j 由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式.日志信息的优先级从高到低有ERROR.WARN. INFO.DEBUG,分别用来

Linux下别名alias设置(输入一个别名即可打印日志)

在Linux环境下,经常需要查看后台web日志,每次都要cd.很麻烦. 查看日志的时候,能否不用这么多cd呢?答案是能.方法如下: 步骤1:   vi  .profile 步骤2:在文件末尾增加别名showLog alias showLog='tail -100f  /pboss/iom/domain/iom/log.log' 保存文件.profile 步骤3:linux下,输入showLog,即可显示日志信息 总结:到此为止,大功告成.勉励自己继续积累吧 Linux下别名alias设置(输入一

Swift 中调试状态下打印日志

首先我们应该知道Swift中真个程序的入口就是在AppDelegate.swift中.所以在打印日志在 AppDelegate.swift中是这样的 import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWi

C#打印日志的小技巧

先祝贺我们的游戏即将上线<龙戒>!http://www.9game.cn/longjie/ 偷得半会闲,分享一个小小的东西.就是打印日志的函数.开发中输出日志必不可少,在C#中输出多个不同类型参数的时候,需要连接符累加输出,很是不方便.一个简单的方法是自己封装一个打印的函数, 让它支持不定参数和不同类型的输出.这样就不会强用字符串进行拼接输出了.也许你没听懂需求,好吧,废话不多说,上代码. public static void Log(params System.Object[] messag

02_JNI中Java代码调用C代码,Android中使用log库打印日志,javah命令的使用,Android.mk文件的编写,交叉编译

?? 1  编写以下案例(下面的三个按钮都调用了底层的C语言): 项目案例的代码结构如下: 2 编写DataProvider的代码: package com.example.ndkpassdata; public class DataProvider { /** * 计算x和y的加法  apktools * * @param x * @param y * @return */ public native int add(int x,int y); /** * 给字符串后面拼接字符串   加密运算