JAVA TIPS java call stack 출력 샘플 (파일, 화면)
2017.03.22 19:38
import java.io.BufferedWriter;
import java.io.FileWriter;
/**
* Created by user on 2017-03-22.
*/
public class run_log {
private static String fileName = "C:\\log\\log.txt" ;
public run_log() {
}
public static void write_file(String strText) {
try{
BufferedWriter fw = new BufferedWriter(new FileWriter(fileName, true));
fw.write(strText);
fw.newLine();
fw.flush();
fw.close();
}catch(Exception e){
e.printStackTrace();
}
}
public static void write_callstack(String strMessage) {
{
write_file(strMessage);
write_file("///////////////////////////// 방법 1 시작 //////////////////////////////");
StringBuffer strStackTrace = new StringBuffer();
Thread thread = Thread.currentThread();
StackTraceElement[] stackTrace_list = thread.getStackTrace();
for (StackTraceElement stackTrace : stackTrace_list) {
strStackTrace.append(stackTrace);
strStackTrace.append(stackTrace.getClassName() + " : " + stackTrace.getMethodName());
}
write_file(strStackTrace.toString());
write_file("///////////////////////////// 방법 1 종료 //////////////////////////////");
}
{
write_file("///////////////////////////// 방법 2 시작 //////////////////////////////");
StringBuffer strStackTrace = new StringBuffer();
StackTraceElement[] stackTrace_list = new Exception().getStackTrace();
for (StackTraceElement stackTrace : stackTrace_list) {
strStackTrace.append(stackTrace.toString() + " \n");
}
write_file(strStackTrace.toString());
write_file("///////////////////////////// 방법 2 종료 //////////////////////////////");
}
}
public static void print_callstack(String strMessage) {
{
System.out.println(strMessage);
System.out.println("///////////////////////////// 방법 1 시작 //////////////////////////////");
StringBuffer strStackTrace = new StringBuffer();
Thread thread = Thread.currentThread();
StackTraceElement[] stackTrace_list = thread.getStackTrace();
for (StackTraceElement stackTrace : stackTrace_list) {
strStackTrace.append(stackTrace);
strStackTrace.append(stackTrace.getClassName() + " : " + stackTrace.getMethodName());
}
System.out.println(strStackTrace.toString());
System.out.println("///////////////////////////// 방법 1 종료 //////////////////////////////");
}
{
System.out.println("///////////////////////////// 방법 2 시작 //////////////////////////////");
StringBuffer strStackTrace = new StringBuffer();
StackTraceElement[] stackTrace_list = new Exception().getStackTrace();
for (StackTraceElement stackTrace : stackTrace_list) {
strStackTrace.append(stackTrace.toString() + " \n");
}
System.out.println(strStackTrace.toString());
System.out.println("///////////////////////////// 방법 2 종료 //////////////////////////////");
}
}
}
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
13 | Maven 관련 에러 | Martin | 2017.08.31 | 7563 |
» | java call stack 출력 샘플 (파일, 화면) | Martin | 2017.03.22 | 330 |
11 | 파일 쓰기 | Martin | 2017.03.22 | 350 |
10 | 로그 | Martin | 2017.02.06 | 352 |
9 | 이클립스 단축키 | Martin | 2016.11.24 | 867 |
8 | jar 내보내기 및 실행 예제 | Martin | 2016.11.10 | 116 |
7 | 이클립스 설정 | Martin | 2016.11.02 | 351 |
6 | 이클립스 플러그인 설치 | Martin | 2016.10.26 | 378 |
5 | Java MessageBox 출력 | Martin | 2016.10.24 | 245 |
4 | java 및 이클립스 개발환경 구성 | Martin | 2016.10.19 | 231 |
3 | 접근 제어자 | Martin | 2016.10.15 | 60 |
2 | 매개 변수 | Martin | 2016.10.15 | 101 |
1 | 자바책 | Martin | 2016.10.14 | 2729 |