Odoo
Odoo ワークフロー
インストール blipit_monitor 1.15.0 from the Odoo Apps store
Odoo ワークフローは、ユーザーが Odoo で行うすべての業務ステップ(見積の確認、請求書の記帳、配送の検証、支払の登録、POS セッションのクローズなど)と、すべてのスケジュールされたアクションを表示します。それぞれについて、Blipit はどれくらいの頻度で成功しているか、誰が止められたか、どのドキュメントが処理待ちか、なぜ失敗するのかを伝えます。誰かから電話がかかってくる前に、壊れたプロセスに気づけます。
1有効にする
Blipit モジュールを 1.15.0 以降にアップグレードします:アプリ → Blipit Error Monitoring → アップグレード。ほかに設定することはありません。ユーザーが次にボタンを押したときからカウントが始まり、Odoo に接続されたプロジェクトでは app.blipit.io のサイドバーに「ワークフロー」が表示されます。最初のステップが届くまでは、データベースからの最初のワークフローを待っていることがページに表示されます。
2ワークフローページに表示される内容
上部のタイルには、失敗中のワークフロー、影響を受けた人、処理待ちのドキュメント、影響を受けた会社の数が表示されます。その下には、ワークフローがアプリごと(販売、会計、在庫、POS、スケジュールされたアクションなど)にまとめられ、それぞれに成功率と「失敗中」「低下」「正常」のステータスが付きます。アプリ、会社、直近24時間・7日間・30日間で絞り込めます。ワークフローを開くと次の内容が表示されます:
- 試行回数、失敗回数、影響を受けた人と会社、そして期間内の成功率の推移。
- 失敗の原因:失敗の背後にあるイシュー。それぞれに「クラッシュ」または「ブロック」の印が付き、イシューページにリンクしています。
- 処理待ちのドキュメント:失敗したステップが関係したすべての注文、請求書、配送。それぞれが Odoo のレコードに直接リンクしています。
- イシューページでは同じつながりを反対側から確認できます:エラーが壊したワークフローと、関係したレコード。「概要」には最も状態の悪いワークフロー3件が表示されます。
3カウントされるステップ
Blipit はドキュメントを先に進めるボタンをカウントします。Odoo 標準のもの(見積の確認、請求書の作成、請求書の記帳、支払の登録、クレジットノート、配送の検証、購買オーダーの確認、POS セッションのクローズなど)と、カスタムモジュールの action_ と button_ メソッドです。後者は所属するアプリの下に、メソッド名から作った名前で表示されます(action_approve_order は Approve order になります)。スケジュールされたアクションの実行も「手動で実行」を含めてすべてカウントされ、「アクション」メニューから起動したサーバーアクションも同様です。ビューを開く、印刷する、その他の読み取りの呼び出しはカウントされないため、一覧は短く保たれます。
4ブロック、クラッシュ、タイムアウト
各試行は4つのいずれかで終わります。成功:ステップが完了した。ブロック:Odoo がユーザーが対処できるメッセージでユーザーを止めた(UserError、ValidationError、AccessError。たとえば勘定科目やルートが設定されていない場合)。クラッシュ:予期しないエラー。タイムアウト:実行時間が長すぎるため Odoo がスケジュールされたアクションを止めた。ブロックされたステップは成功率のためにすべてカウントされ、原因を読めるよう20件に1件が警告イベントとしても保存されます。ブロックされたステップで誰かが呼び出されることはありません。クラッシュとタイムアウトは、ほかのエラーと同じくエラーイベントとして届きます。
51分ごとにカウント
各 Odoo ワーカーは試行回数をメモリ上で集計し、1分に1回、小さなリクエスト1つで Blipit に送ります。アイドル中は何も送りません。呼び出しがワークフローかどうかの判定はデータベースへの問い合わせを伴わない単純な照合なので、ページが遅くなることはありません。カウントはイベントとして課金されません。プランのイベント数に数えられるのは、エラーとブロックのサンプルだけです。
7アラート
「アラート」ページには「ワークフローアラート」セクションがあり、最初から両方オンになっている2つのルールがあります。「多くの人で失敗」は、10分以内に3人以上が同じワークフローでクラッシュに遭遇すると発火します。「スケジュールされたアクションの失敗」は、スケジュールされたアクションが2回連続で失敗するか、タイムアウトしたときに発火します。しきい値と期間を変更したり、ルールをオフにしたりできます。ワークフローアラートはほかのアラートと同じ人とチャネル(メールルール、Slack、Microsoft Teams、webhook、それらがない場合はオーナー)に送られ、スヌーズと1時間あたりのアラート上限に従い、ワークフローごとに1件だけ通知し、問題が15分間解消していれば復旧の通知を送ります。ブロックされたステップでアラートが出ることはありません。
8プラン
- すべてのプラン:ワークフローごとの失敗、影響を受けた人、Odoo へのリンク付きの処理待ちドキュメント、原因、そして「多くの人で失敗」アラート。
- Solo 以上:成功率、試行回数と推移、「スケジュールされたアクションの失敗」アラート、そして Odoo のレコード上のバナー。
- 履歴:Free は7日間、有料プランは30日間。
- 試行回数はすべてのプランでカウントされるため、アップグレードするとすぐに直近の履歴の成功率が表示されます。
9プライバシー
成功したステップはカウントとしてのみ送信されます:ワークフロー、会社、回数。失敗したステップでは、さらに関係したドキュメントのレコード ID(最大20件)、Odoo のユーザー ID、会社 ID を、すべて単なる数値として送信します。ワークフローのデータに金額、名前、メッセージが含まれることはありません。ブロックされたユーザーに Odoo が表示したメッセージはお客様自身の Odoo データベース内にとどまり、バナーがそこから読み取ります。20件に1件のブロックのサンプルはエラーイベントであり、そのメッセージは Odoo から送信される前に数値と引用符で囲まれた値が取り除かれます。
知っておくと便利
- 自社サーバー上の Odoo と Odoo.sh で動作します。Odoo Online はサードパーティモジュールを許可していません。
- Odoo がワーカーを再起動すると(たとえば limit_request に達したとき)、そのワーカーの最大1分間のカウントが失われることがあります。成功率はこの程度の欠損には影響されません。
- データベースの競合のあとで Odoo がステップを再試行した場合、最終的な結果だけがカウントされます。
- 古いバージョンのモジュールから届いたエラーも、リクエストにボタン名が含まれていればイシューページにワークフローが表示されます。ただし、成功率と処理待ちのドキュメントには 1.15.0 が必要です。
- レコードへのリンクは、モジュールが接続時に報告したアドレスで Odoo を /odoo/<model>/<id> として開きます。
- 失敗したステップの記録はプランのワークフロー履歴の期間に従います。あとでステップが成功したレコードの記録は7日後に削除されます。
お困りですか?support@blipit.io までメールしてください。各プロジェクトのキーと正確な DSN は app.blipit.io の「APIキー」にあります。
