Project

General

Profile

バグ #3211

ログ rtcbuilder.log の生成場所の問題

Added by n-ando over 7 years ago. Updated almost 6 years ago.

Status:
終了
Priority:
通常
Assignee:
Target version:
-
Start date:
06/08/2015
Due date:
% Done:

100%

Estimated time:

Description

ログ rtcbuilder.log の生成場所が、カレントディレクトリとなっているため、書き込み権限がないとロックが取得できずエラーになりパースぺーくティブが開けない。

History

#1 Updated by n-ando over 7 years ago

  • Linuxのシステム上(/usr/lib/x86_64_linux_gnu/openrtm-1.1/openrtp)にrtmtoolsをインストール。
  • eclipse実行時に、cd /usr/lib/x86_64_linux_gnu/openrtm-1.1/してから実行しないと不具合有(rtsystemeditorのログのバグ)
  • cd /usr/lib/x86_64_linux_gnu/openrtm-1.1/ して一般ユーザから実行しようとするとこのディレクトリに書き込み権限がないためパースペクティブを開けずにエラー
    $ ./eclipse 
    java.io.IOException: Couldn't get lock for rtcbuilder%u.log
        at java.util.logging.FileHandler.openFiles(FileHandler.java:389)
        at java.util.logging.FileHandler.<init>(FileHandler.java:287)
    
           :
    
  • 逆に、カレントディレクトリを変更せずにeclipseを実行するとRTsystemEditorのログのロックでエラーが出る。

#2 Updated by n-ando over 7 years ago

  • % Done changed from 0 to 30
対処方法として、
  • logger.properties に下記のようにログファイルパターンを記載し
    jp.go.aist.rtm.rtcbuilder.RTCBLogHandler.pattern=%h/.rtcb%u.log
    jp.go.aist.rtm.systemeditor.RTSELogHandler.pattern=%h/.rtse%u.log
    
  • 起動時のオプションでこのファイルをロガークラスのコンフィギュレーションとして読み込ませることで回避可能
    $ eclipse -vmargs -Djava.util.logging.config.file=/usr/lib/x86_64-linux-gnu/openrtm-1.1/openrtp/logger.properties
    
  • vmargs 以下を eclipse.ini に記載しても同じ効果が得られる。

#3 Updated by ga almost 7 years ago

  • Status changed from 新規 to 解決
  • Assignee set to ga
  • % Done changed from 30 to 100

r550にて修正
・java.util.loggingによるロギングの仕組みは廃止
・slf4j+logback方式を採用
→jp.go.aist.rtm.toolscommon.profile 以下にJAR含め、初期化用のユーティリティクラス(LoggingUtil)を追加・公開
・RTSE/RTCB起動時に、以下のフローで初期設定を行います。
 - eclipse フォルダ直下に設定ファイル(logback.xml)が存在するか確認
 - 設定ファイルが存在しない場合は、デフォルトのファイルを生成
→以後はこのファイルを更新すればOK
 - eclipse/logback.xmlを読み込んで初期設定
→標準出力とファイルへ出力します。出力ファイルは ${HOME}/openrtp.log
・e.printStackTrace()でスタックトレースを表示している箇所をロガーに置き換え

#4 Updated by n-ando almost 6 years ago

  • Status changed from 解決 to 終了

Also available in: Atom PDF