目次
この記事を読んだ方で、RPAツールを使ってロボットを運用しているが、エラーが発生したときにどのように対応したらいいのかわからずに上手く運用できていないという方はいませんか?
しかし、事前によく発生するエラーはなんなのか、どのようにエラーの対策をしたらいいのかを把握しておくことでエラーが発生してしまったとしても十分に上手く運用することができます。
今回の記事では私が担当したお客様の中で、RPA運用時によく発生したエラーとその対応方法をご紹介させていただきます。
ロボットのリリース後によく発生するエラーと解消方法
運用時によく発生するエラーは環境要因が多い!?
RPAを運用する際に、ロボットの設定によるエラーより、利用するシステムやネットワークによる環境要因で起きるエラーの場合が多いです。
今回は、環境要因によるエラーを三つ紹介します。
自動化対象の基幹システム/Webサイトの仕様変更によるエラー
ロボットリリース後、運用・保守の段階に入った際に一番よく発生するエラーは、ロボットで使用している基幹システムやWebサイトの仕様が変わったことによるエラーです。
ロボットは教えた手順の通りに実行をするので、運用後に操作する対象の位置などが変わってしまうとエラーになってしまいます。
<解消方法>
事前に基幹システム/Webサイトの仕様変更時期を確認して、変更のタイミングに合わせて改修のスケジュールを立てる
まずは定期的に、運用しているロボットで使用している基幹システム/Webサイトの仕様変更があるかを確認します。
次に、仕様変更のスケジュールに合わせて、ロボットの改修スケジュールを設定します。
利用システムやサイトのテスト期間中にロボットの改修もできていれば、仕様変更の本番リリースに合わせてロボットもリリースすることによって、ロボットを動かせない期間を防ぐことができます。
ネットワークの遅延によるエラー
次によく発生するエラーはネットワークの遅延によるエラーです。
システムなどを使用した業務は、どうしてもネットワークによって動作の速度が左右されてしまうため、ネットワーク速度が遅ければ遅いほど、ロボットの処理速度に実際操作するシステムの画面が追い付かずにエラーになってしまうケースが多いです。
<解消方法>
予めネットワーク遅延が発生した場合でも対応できるようにロボットを構築する
ある程度のネットワークの遅延を考慮して、開発時にロボットで画面遷移や操作の前後に遅延を設定することで、万一ネットワーク遅延が発生した場合でもエラーを回避することができます。
ただし、ロボットで遅延を設定したからと言って必ずしもネットワーク遅延を回避できるわけではありません。
遅延を設定してもネットワーク遅延を回避できない場合は、会社のポリシーなどに合わせてネットワークの変更を検討することも方法の一つです。
開発時には想定していなかった例外処理の発生
最後の三つ目は環境要因とは異なりますが、ロボットを開発するときに想定していなかった例外処理が発生することによるエラーです。
例えば、システム内で登録項目に誤りがありエラーが発生した場合の処理をロボットに設定しておらず、後続の処理がエラーになってしまうパターンです。
<解消方法>
ロボット開発時に発生しそうな例外処理を全て確認した上でロボットを構築する
例外処理によるエラーを防ぐにはロボット開発時に予め発生しそうな例外処理を洗い出して設定することが大事です。
例えば、条件に合致しないデータが入っている場合、人が作業する際は該当データを除外して次の処理に進んで、すべて処理が終わってから条件が合致しないデータの原因を調査して対応することになると思います。それと同じように、「条件が合致しないデータを除外し、条件が合致するデータをすべて処理完了した後、担当者に連絡して確認する」ように、ロボットに設定しておきます。そうすることによって、条件が合致しないデータがあっても、ロボットが止まることなく、最後まで実行することができます。
このように、エラーの原因になることが想定される箇所に対して事前に対応策を講じることでRPAのエラー発生率を減らすことができます。
ここまではRPAでよくあるエラーの対策と予防策を紹介いたしました。
次のフェーズでは、運用時に発生する以下のお悩みに対しての解消方法をご紹介します。
- エラーが発生した際の原因調査はどのように進めればいいのか?
- 原因を特定する時間を短縮できないのか?
エラー発生時に早期対応するために準備しておくこと
エラーの発生原因と発生個所を素早く特定できるように設定するのが大切!
エラーの回避策を設定するも、リリース前にどんなに検証を重ねていても、実際に運用してみないと安定して継続して動作できるのかわからない。それがRPAの特徴であり弱点でもあります。
私が開発から運用まで携わっているロボットの中にも、リリース後に開発時には想定もしていなかったエラーが発生してしまうケースが多々ありました。
ですので、実運用する際に最も大切なことはエラーが起こることを想定した上で、エラーが発生しても最短で解消できるようにロボットを構築しておくことです。
基本的にエラー発生時には、エラー検知>原因特定>対応案の決定>ロボットの修正 のステップで進めます。
エラーが発生した場合、エラーの検知と原因を早急に特定することが重要です。
エラーへの対応が遅れると業務に支障をきたす場合や、想定している削減効果を得ることができなくなります。そのためスピード感をもって対応できるようにしておくことが重要です。
以下弊社がRPAツール「Automation 360」で自動化する際に設定しているエラー発生時でも早急にエラーに対応できるようにするための機能をご紹介します。
ログの設定
どこでエラーが発生したのか、ロボットがどこまで進んだのかを可視化することで、エラー箇所の特定を素早くすることができます。私たちがロボット運用に活用しているロボットが実施した処理内容を記録するプロセスログとエラー内容を記載したエラーログをご紹介します。
- プロセスログ
プロセスログは、ロボットの操作がどこまで進んでいるのかを記載したログを指します。
プロセスログを設定することによって、ロボットでエラーが発生した際にどこまでの操作は正常に進んだのかを把握することができるので、次に紹介するエラーログとセットで確認することで、エラー箇所をすばやく特定することができます。
プロセスログの設定方法はロボットのフェーズごとに、処理の内容をログに記載をします。
<設定方法>
ステップ(Excelを開いて値を取得する)のあとに必ずログ出力処理を設定し、現在実施中のステップ内容をログに記載
<使用するアクション>
ファイルに記録: テキストをファイルに記録
※タイムスタンプを追加し、いつ実行したものかわかるように設定
<出力結果>
実行時間、実行Bot、実施内容が記載
- エラーログ
エラーログは、上記キャッチしたエラー情報(エラーが発生したロボット、ロボットの行番号、エラーメッセージ)を記載したログになります。
Automation 360では、「エラーハンドラー」という機能を使用することで、処理の途中でエラーが発生した際に、エラー情報をキャッチしてくれます。
キャッチしたエラー情報をエラーログとしてファイル形式で出力することによって、毎回ロボットの中身を確認しなくても下記添付写真のように、どこでエラーが発生したのかを確認することができます。
<設定方法>
エラー内容をキャッチした後に必ずファイルに記録処理を入れてエラー内容をログに記載する
<使用するアクション>
ファイルに記録: テキストをファイルに記録
※タイムスタンプを追加し、いつ実行したものかわかるように設定
<出力結果>
実行時間、エラー発生箇所、エラー内容が記載
エラーキャプチャ
エラーキャプチャとは、エラーが発生した画面のスクリーンショットになります。
エラーキャプチャを設定することで、実際どこの画面でエラーになってしまったのかを記録することができ、より簡単にエラーの発生箇所を特定することができます。エラーログと合わせてエラーキャプチャを確認することで、ロボットがどの画面でなにを処理している時にエラーが発生したのかを把握することができます。
<設定方法>
エラー内容をキャッチした後に必ずキャプチャ取得処理を入れてエラーが発生した画面のキャプチャを取得する
<使用するアクション>
スクリーン: デスクトップをキャプチャ
<出力結果>
エラーが発生した画面のスクリーンショットが保存される
正常・異常通知メール
正常・異常通知メールは、ロボットが正常終了したか、エラーが発生して異常終了したかを通知するメールになります。
ロボットが終了した際に、必ず実行結果を通知するメールを設定しておくことで、ロボットでエラーが発生したことを、ロボットの管理画面を見ることなく、ロボットの終了タイミングでエラーを検知することができます。
また、異常終了メールに上記で紹介したエラーログファイルとエラーキャプチャを添付すると、格納フォルダに行かなくてもメールから確認できますので、お勧めいたします。
<設定方法>
- 正常終了通知メール
試行の中に設定しているステップの処理が全て完了した後に必ずEメール送信処理を入れて正常終了通知メールを送信する
- 異常終了通知メール
エラー内容をキャッチした後に必ずEメール送信処理を入れてエラーログとエラーキャプチャを添付して異常終了通知メールを送信する
<使用するアクション>
E メール: 送信
<出力結果>
- 正常終了メール
ロボットが正常に完了した時にはRPAから自動で正常終了メールが届く
- 異常終了メール
ロボットがエラーで終了した際にはエラーキャプチャとエラーログが添付されたRPAから自動で異常終了メールが届く
このようにエラーが発生した際の対策をロボットで設定することによって、エラーが発生した際に素早くエラーの発生箇所と原因を特定することができます。エラーを素早く特定できればエラーを解消してロボットのリランを実行するまでのスパンを短縮できるではないかと考えます。
RPAツールを導入したはいいけど、エラー発生率が高くて悩んでいる、エラーが発生したときにどのように対応したらいいのかわからないという方、原因の特定から対策のご提案までご提案させていただきます。お困りの方がいらっしゃいましたら是非弊社までお問合せ下さい。
ペネトレイター株式会社 星野