'debug'에 해당되는 글 2건

  1. 2015.10.14 R 디버깅 툴 활용하기~
  2. 2011.10.02 안드로이드 소스 오류 없는데 오류 표시되어 있는 경우 (Debug certificate expired on..)

R 디버깅 툴 활용하기~

|



대부분의 프로그래밍 언어처럼 R에서도 디버깅 툴을 제공한다. 

R에 내장되어 있는 디버깅 툴을 살펴보도록 하자. 


traceback

간단하게 사용할 수 있는 디버깅 툴로 traceback()이 있다. 

traceback()은 함수들을 호출한 콜 스택을 보여주는 것이다. 


x 값이 할당되어 있지 않기 때문에 에러가 발생했고, 

traceback()으로 함수 호출 스택을 살펴보면 mean() 함수 하나만 나온다. 

좀 더 복잡한 선형 회귀 분석을 계산하는 lm() 함수를 살펴보자. 


lm(y ~ x)를 처리하기 위해서 eva(), eval(), model.frame() 등을 순차적으로 호출한 것을 알 수 있다. 

그러나 traceback은 함수를 어떤 순서로 호출했는지만을 알려주고 있다. 


debug

실제로 함수들을 만들었을 때 가장 많이 사용하는 것이 바로 debug와 Browse이다. 


debug(lm)를 선언하고 나면, lm()을 실행할 때마다 디버깅 모드로 들어간다. 

디버깅 모드에서는 소스 화면에 다음과 같이 해당 함수의 소스가 나타난다. 


그리고 콘솔 화면에는 한 라인씩 실행해 볼 수 있는 브라우저 창이 나타난다. 


help를 입력하면 사용할 수 있는 명령어를 확인할 수 있다. 

n을 입력하면, 한 줄씩 실행하면서 결과를 확인할 수 있다. 

s는 해당 소스가 실행하는 함수가 있을 경우, 그 안으로 다시 들어가는 역할을 한다. 

c는 전체 소스 실행을 완료하고 종료하는 명령어 이고, 

Q는 소스를 실행하지 않고 바로 종료할 사용한다. 


중요한 점은 debug(lm)를 실행하고 undebug(lm)를 하지 않으면, 

lm()을 실행할 때마다 디버그 모드로 들어가므로 항상 쌍으로 debug(), undebug()를 사용하는 것이 필요하다. 


recover

에러가 발생했을 때, 바로 잡기 위해 추천을 해주는 옵션도 존재한다. 

options(error = recover)를 지정하면, 선택할 수 있는 다음과 같이 선택할 수 있는 명령이 나타난다. 


옵션을 선택하면 Browse가 가능한 디버깅 모드로 들어간다. 

빠져 나올 때는 0을 선택하면 된다. 

recover 옵션을 제거하기 위해서는 options(error = stop)으로 다시 설정하면 된다. 


미니의 R 주요 강좌...

데이터 통계 분석을 위한 R 설치와 활용

R 실행을 위한 기본적인 내용들~

R 데이터 구조에 대한 정리

R 패키지 설치하기

R 데이터셋 처리 함수들에 대한 간단한 정리~

R 데이터셋 정렬하기~

R 데이터셋의 일부 데이터 가져오기

R의 lapply, sapply, vapply를 이해하자~

R의 apply, tapply의 활용법을 알아보자~

R의 split 활용

R의 함수 작성 및 활용~

R 시뮬레이션 - 랜덤 변수 샘플링

R 함수에서 캐시 활용하기~

R 디버깅 툴 활용하기~


신고

'Cloud&BigData > R' 카테고리의 다른 글

R 디버깅 툴 활용하기~  (0) 2015.10.14
R 함수에서 캐시 활용하기~  (0) 2015.10.12
R 시뮬레이션 - 랜덤 변수 샘플링  (0) 2015.10.08
R의 함수 작성 및 활용~  (0) 2015.10.07
R의 split 활용  (0) 2015.10.05
R의 apply, tapply의 활용법을 알아보자~  (0) 2015.10.01



Trackback 0 And Comment 0

안드로이드 소스 오류 없는데 오류 표시되어 있는 경우 (Debug certificate expired on..)

|



안드로이드 개발하다보면 가끔 소스에는 전혀 오류가 없는데... 
더군다나 지난번에는 제대로 사용했는데..
오류가 나면서 컴파일이 안되는 경우가 있습니다.

이럴 때 나타나는 오류 메시지는 다음과 같습니다.
Error generating final archive: Debug certificate expired on ..

Debug와 관련된 인증 기간이 만료되어서 발생한 오류입니다. 
Debug certificate는 만들어진 후 365일이 지나면 만료되게 됩니다.
그러므로 만료된 Debug certificate를 새로 갱신해주면 되는데요.. 다음과 같은 방법으로 처리하면 됩니다.

바로 debug.keystore 파일을 찾아서 삭제한 후, 안드로이드 애플리케이션을 빌드 하면 오류는 해결됩니다.

debug.keystore 파일의 위치는 이클립스의 환경설정에서 찾을 수 있습니다. 
Window > Preferences > Android > Build 에서 'Default debug keystore' 항목을 보면 debug.keystore 파일의 위치를 알 수 있네요. 

윈도우 탐색기 등에서 해당 폴더로 이동한 후, debug.kestore 파일을 삭제하시면 잘 될 거예요.. ^^


 
신고



Trackback 0 And Comment 0
prev | 1 | next