3
発生したエラーをキャッチするのにtryCatch
を使用しています。しかし、私はそれらを捕まえて適切なエラー値を返しても、私のバッチシステムのログにエラーが報告されているように見えます。エラーを完全に抑制し、単にエラー処理を続行する方法はありますか?tryCatchはエラーメッセージを表示しません
発生したエラーをキャッチするのにtryCatch
を使用しています。しかし、私はそれらを捕まえて適切なエラー値を返しても、私のバッチシステムのログにエラーが報告されているように見えます。エラーを完全に抑制し、単にエラー処理を続行する方法はありますか?tryCatchはエラーメッセージを表示しません
(1)エラーを返さず、(2)エラー処理コードでstderr
に印刷していないことを確認してください。 1つは、message
の出力がstderr
に送信されていることに注意してください。
両方の条件を満たしているために、最小限の方法はtryCatch(expr, error = function(e) {})
は何をここで意味「適切なエラー値を返す」んでしょうか?エラーハンドラからエラーを返す場合は、エラーハンドラが表示されることがあります。あなたは 'tryCatch(expr、function(e){})'を返すことはできません( 'e'がいくつかの条件を満たしているかどうか最初にチェックしてください) – jaimedash
私は明らかに私のエラーハンドラ関数から明示的にエラーを返していません。私は 'message(cond)'でメッセージを出力しますが、 'cond'はエラー状態です。これが表示されているのでしょうか?つまり、メッセージはstdoutではなくstderrに実際に送信していますか? – Alex
言い換えれば、私が 'message(cond)'していないと正しいエラーが表示されないのですか? – Alex