[openrtm-users 01389] Re: use of wildcard try-except in RTObject.py and Manager.py

Geoffrey Biggs geoffrey.biggs @ aist.go.jp
2010年 8月 6日 (金) 15:44:11 JST


栗原様

ジェフです。

2.3の場合、traceback.format_exception(sys.exc_info())が使えます。でも、
thread safeではないので、sys.versionをチェックして2.4以上なら
traceback.format_exc()を使ったほうがいいと思います。


On 06/08/10 15:35, kurihara shinji wrote:
> 松坂様
> 
> お世話になっております。
> 栗原です。
> 
>> せめてエラーが発生したときに呼ばれた関数名や、エラーコードの中身を出すようにはできないでしょうか?
> はい、承知致しました。
> 現状のままですと、確かに、どこでエラーが発生したのかわかり辛いですね。
> 修正しましたら、ご連絡させて頂きます。
> 
> ジェフ様
> 
>> 以下の件で、DEBUGの時、traceback.format_exc()を使ってログに出したらどう
>> でしょうか。
> 有難うございます。
> トレースバックの取得には、traceback.format_exc()が便利なようですが、
> Python2.4で追加された機能ですので、検討させて頂きます。
> (Windows版に関しましては、Pythonの推奨バージョンを2.4以降と記載していますが、
>  Python2.3を使用している方もいらっしゃるかも知れませんので。。。)
> 
> 
> 以上、宜しくお願い致します。
> 
> 
> 
> On Fri, 06 Aug 2010 14:52:58 +0900
> Geoffrey Biggs <geoffrey.biggs @ aist.go.jp> wrote:
> 
>> 栗原様
>>
>> ジェフです。
>>
>> 以下の件で、DEBUGの時、traceback.format_exc()を使ってログに出したらどう
>> でしょうか。
>>
>>
>> On 06/08/10 14:31, Yosuke Matsusaka wrote:
>>> OpenRTM-aist開発者の皆様(栗原さん)
>>>
>>> 産総研の松坂です。
>>>
>>> Python版の実装に関して、下記の例外発生時のエラー表示に対応いただきありがとうございました。
>>> ただ、、、現状のエラー表示が簡素すぎるため、デバッグ時には結局すべて自分でトレースコードを仕掛ける
>>> ことになってしまっています。
>>>
>>> 現状で以下のようなエラーが出ると思いますが、
>>>
>>> 2010-08-06 14:18:50,874 rtobject ERROR <type 'exceptions.NameError'>
>>>
>>> せめてエラーが発生したときに呼ばれた関数名や、エラーコードの中身を出すようにはできないでしょうか?
>>>
>>> ご検討ください。よろしくお願いします。
>>>
>>> 2009/11/30 Yosuke Matsusaka <yosuke.matsusaka @ aist.go.jp>:
>>>> OpenRTM-aist開発者の皆様
>>>>
>>>> 産総研の松坂です。
>>>>
>>>> お忙しいところ、たびたびすいません。
>>>>
>>>> Python版の実装についてのリクエストなのですが、
>>>> RTObject.pyの関数(on_*すべて)
>>>> Manager.pyの関数(registerFactory, registerECFactoryなど)
>>>> に関して、
>>>>
>>>> try:
>>>>    ...
>>>> except:
>>>>    return ...
>>>>
>>>> となっている部分を
>>>>
>>>> try:
>>>>    ...
>>>> except:
>>>>    print sys.exc_info()[0]
>>>>    return ...
>>>>
>>>> などと変更できないでしょうか?
>>>>
>>>> except文をワイルドカード指定で使ってしまうと文法エラー等も捕獲されてしまいます。
>>>> ユーザスクリプトをtry-and-errorを繰り返して開発して行きたいのですが、現在の実装だと
>>>> 上記の各関数でエラー表示なしでreturnしてしまうため、デバッグ作業がなかなかうまく
>>>> 進みません。
>>>> 上のように直すことでエラー表示をつけてほしいのですが、検討いただけますでしょうか?
>>>>
>>>> --
>>>> Yosuke Matsusaka, Ph.D  <yosuke.matsusaka @ aist.go.jp>
>>>>  Interaction Modeling Group /
>>>>  National Institute of Advanced Industrial Science and Technology (AIST)
>>>>  Tel: 029-862-6726  Web: http://staff.aist.go.jp/yosuke.matsusaka/
>>>>
>>>
>>>
>>>
>>
> 
> 



openrtm-users メーリングリストの案内