======State Trace======
Motion, IO 의 State를 추적할 수 있는 State Tracer의 안내 페이지입니다.\\
\\
===Intro===
* Position, Speed 등의 모션관련 state나 Di/Do 등의 IO State를 정해진 시간 간격으로 파일에 기록할 수 있습니다.
===시작하기===
\\
* ** View ** - ** State ** 클릭
\\
{{ :application:comiide:monitor:state_1.png?nolink |}}
\\
===사용방법===
\\
{{ :application:comiide:monitor:state_2.png?nolink |}}
\\
* Category, Channel, Item을 선택한 후 ** Add ** 를 클릭하여 Item을 추가 합니다.
\\
{{ :application:comiide:monitor:state_3.png?nolink |}}
\\
* Item을 모두 추가 하였다면, ** Start ** 를 클릭하여 Trace를 시작합니다.
* Interval 은 기록 간격으로, 단위는 ms 입니다. 1 입력 시 1ms 단위로 로깅됩니다.
* 기록을 시작하면, log는 우선 queue에 기록되며, **Stop** 클릭 시 Queue Data가 파일로 기록됩니다.
* 따라서 log Buffer Size가 작고, Trace 시간이 길다면 (또는 Interval이 작다면) 초기 log는 기록되지 않을 수 있습니다.
\\
{{ :application:comiide:monitor:state_4.png?nolink |}}
\\
* Trace가 진행되는 동안 기록된 Log 수와, Log Buffer Size를 확인 할 수 있습니다.
* Log Buffer Size는 Stop 상태에서만 변경 가능합니다.
\\
{{ :application:comiide:monitor:state_5.png?nolink |}}
\\
* Logging 완료 후 open 버튼을 클릭하면, log 파일이 저장된 폴더를 확인할 수 있습니다.
\\
{{ :application:comiide:monitor:state_6.png?nolink |}}
\\
* Log File은 "State_date_time.txt" 형태로 저장됩니다.
===Info===
\\
* Item에 없는 항목을 Logging 하려면, **[[application:comiide:tool:shell:start|Shell]]**의 **[[application:comiide:tool:shell:shell_logmode|LogMode]]**를 이용하시기 바랍니다.
* 모든 로그를 기록하고자 한다면, **[[application:comiide:tool:shell:start|Shell]]**을 이용하시기 바랍니다.
* Shell의 Memory 방식은 double buffering 방식으로 모든 내용이 logging 됩니다.
* Graph Tool 을 이용하여 **[[application:comiide:monitor:50_graph:30_logtofile | Graph로 확인]]** 할 수 있습니다.