- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
エキスパートに聞く: フローのパフォーマンスとデバッグ
ServiceNowでのフローのデバッグや最適化にお困りではありませんか?このPlatform Academyセッションでは、Flow EngineとFlow Debuggerを最大限に活用するための洞察が満載です。
Sharon Barnesがホストを務め、Eric、Riya、Sravya、VincentなどのServiceNowエキスパートがパネリストとして参加し、実践的なデモ、ベストプラクティス、および開発者からのよくある質問への回答を提供いたします。
このセッションをYouTubeで今すぐご覧ください!
🎥 動画: https://www.youtube.com/watch?v=BGfLqtldCXc
リソース
前回のPlatform Academy (デバッグについて):
https://sn.works/platformacademy/19
エラーハンドリング:
https://sn.works/CoE/ErrorHandling
Playbooksの開始方法:
https://sn.works/CoE/StartPlaybooks
フローでの承認:
https://sn.works/CoE/FlowApproval
Creator Toolbox (Flow Debuggerについては36:50から)
SNUコンテンツ (別名 Now Learning)
トップへ戻る^
ServiceNowにおけるフローのデバッグと最適化: Platform Academyからの主要なポイント
ServiceNowで信頼性の高いフローを構築することは、エラーが発生したりパフォーマンスが低下したりする場合に特に難しくなることがあります。このPlatform Academyセッションでは、ServiceNowのエキスパートが、新しいFlow Debugger、フローのパフォーマンス、および複雑な自動化を処理するための戦略について知っておくべきすべてのことを解説いたしました。
Flow Debuggerの活用
Yokohamaリリースで初めて導入されたFlow Debuggerは、トラブルシューティングから推測作業をなくします。ブレークポイント、ステップナビゲーション、およびプラットフォームスクリプトデバッガーへの直接統合により、開発者は長く複雑なフローやカスタムアクションスクリプトをこれまで以上に簡単にデバッグできるようになりました。
パフォーマンスのベストプラクティス
大きくなりすぎたフローは、メモリと実行時間にすぐに影響を与える可能性があります。以下に、このセッションからの主要な推奨事項を挙げます。
- フローは25アクション未満に保ち、必要に応じてサブフローに分割してください。
- 推奨される上限: フローあたり50アクション (システムプロパティによって制御されます)。
- ループ: 1,000回を超える反復は避けてください。
- アクティブなトラブルシューティング時を除き、詳細なロギングは最小限に抑えてください。
- より良いリソース管理のために、可能な限りフローを非同期で実行してください。
複雑な自動化のためのPlaybooks
フローが大規模になった場合、PlaybooksはUIレイヤーで複数のサブフローをオーケストレーションし、より管理しやすく、ユーザーフレンドリーにします。また、Playbooksはワークスペースに限定されず、ポータルやモバイルアプリでも機能します。
Zurichリリースの新機能
次期Zurichリリースでは、フロー履歴と自動保存が導入され、以前のバージョンに戻したり、タイムスタンプとエディターの詳細で変更を追跡したりできるようになります。また、フロー変数サポートが拡張され、オブジェクトと文字列の配列も含まれるようになります。
ワークフロー移行ガイド
従来のワークフローからフローへの移行は、コピー&ペースト作業ではありません。むしろ、プロセスを再検討し、最適化し、最新の統合と自動化パターンを活用する機会となります。
トップへ戻る^
Q&Aの要点
- デバッグにはACLや特定のロールが必要ですか、それとも標準のフローロールで十分ですか?
回答: 標準のフローロールで十分です。当初はflow_debuggerロールが導入されましたが、アクセスを簡素化するために後に削除されました。
- デバッグはZurichリリースでのみ利用可能ですか?
回答: いいえ、Yokohamaリリースで導入されました。
- 別のスコープからフローをデバッグできますか、それともフローのスコープ内にいる必要がありますか?
回答: フローが別のスコープにある場合でも、実行にアクセスできます。
- インシデントやRITMのようなレコードを入力として提供した場合、フローはレコードの現在の状態に基づいて実行されますか、それとも初期状態に基づいて実行されますか?
回答: 現在の状態に基づいて実行されます。デバッグはテストに似ています。
- フローは本番インスタンスでデバッグすべきですか、それとも開発インスタンスのみでデバッグすべきですか?本番環境でのパフォーマンスへの影響はありますか?
回答: ベストプラクティスとしては、非本番インスタンスでデバッグすることですが、本番環境でも利用可能です。
- 遅いフローのトラブルシューティングはどのように行いますか?
回答:
- ステップレベルのランタイム分析
- 各ステップのランタイムをチェックし、遅いアクションを特定して、それに応じて最適化します。
- フローのサイズと複雑さの制限
- 最高のパフォーマンスを得るには、フローアクションを25に制限します。推奨される最大アクション数は50です (システムプロパティによって制御されます)。
- エラーハンドリングセクション: 最大10アイテムです。
- ループ: 1,000アイテムを超える反復は避けてください。
- ロギングオーバーヘッド
- クリティカルなフローの場合にのみ、フルロギングを有効にしてください。
- システム負荷を軽減するために、通常のフローではロギングを最小限にするか無効にしてください。
- 非同期実行
- 最適なスケジューリングのため、および他のプロセスをブロックしないために、フローは非同期で (デフォルト) 実行させてください。
- キュー管理と優先順位付け
- ビジネス上重要なフローには、より高い優先順位を割り当ててください。
- 大量または実行が遅いフローには、より低い優先順位を設定してください。
- アーキテクチャに関する考慮事項
- 同時実行されるフローの数はイベントハンドラーに依存します (デフォルト: ノードあたり3つ)。
- ノードアフィニティにより、フローはトリガーされたノードで実行され、キューのレイテンシーを削減します。
- 複雑なフローにはPlaybooksを使用する
- 非常に複雑または長大なフローの場合、管理のしやすさやUI統合を向上させるために、playbooksでオーケストレーションすることを検討してください。
トップへ戻る^
- フローをPlaybookに置き換えることはできますか?
回答: 直接的な変換は存在しませんが、サブフローやアクションをPlaybooksで再利用することはできます。
- 最初からスケジュール済みジョブとして設定した方が良いですか?
回答: どちらのアプローチも問題ありません。スケジュール済みジョブは、バックエンドでトリガーされる自動化です。
- スクリプト化されたコンテンツを検索できるようになるのはいつですか?
回答: 特定のタイムラインはありません。現在検討中です。
- フローをPlaybooksに置き換えるのに役立つガイドラインやビデオはありますか?
回答: はい、Workflow Automation CoE (https://sn.works/CoE/StartPlaybooks) を参照してください。 また、ServiceNow Universityで利用可能なトレーニングもご確認ください: https://sn.works/CoE/Training
- フローを別のインスタンスに移動するにはどうすればよいですか?
回答: フローは、アップデートセット内で単一のファイルとして表現されます。
- 名前でフローを検索する機能はいつ追加されますか?
回答: これはWorkflow Studioの列ヘッダーフィルターを介してすでに利用可能です。
- クローンバックはフロー履歴に影響しますか?
回答: はい、クローンは他のレコードと同様にバージョン履歴を上書きします。
- 命名規則/バージョン管理のベストプラクティスは何ですか?
回答: バージョン固有のアノテーションを使用してください。フロー名は変更されません。
トップへ戻る^
- PlaybooksはUI16フォームでも機能しますか、それともワークスペースに限定されますか?
回答: Playbook Experienceは現在、Configurable Workspaces、サービスポータル、モバイルを含むNext Experienceページで利用可能です。UI16フォームはサポートされていません。
- 生成AIはすでにPlaybooksを生成できますか?
回答: Playbook Generation Skillを使用するとPlaybooksを生成できます。これはNow Assist for Creatorに含まれています。https://sn.works/PlaybookGeneration
- サービスポータルでPlaybooksは何に使用されますか?
回答: エージェントやエンドユーザー向けに、行ったり来たりする可能性のあるプロセスを自動化します。
- イベントによってトリガーされるフローは、特定の同時実行数に制限できますか?
回答: 同時実行数はイベントハンドラーの数によって制限され、デフォルトではノードあたり3つです。そのため、容量はインスタンスのサイズとアーキテクチャによって決定されます。
- UIとワーカーノードを持つ環境では、フローはデフォルトでワーカーノードで実行されますか?
回答: フローはデフォルトでバックグラウンドプロセスを開始し、ノードアフィニティ用に設定できます。
- Now Assistでワークフローを作成できますか?
回答: はい、Now Assistを介してフロー、サブフロー、およびPlaybooksを作成できます。従来のワークフローはサポートされていません。
- デバッグは潜在的なパフォーマンス問題を示しますか?
回答: はい、遅いステップを浮き彫りにすることができます。
- 入力レコードを持つフローをデバッグする際、レコードの状態は変更されますか?
回答: デバッグはテストに似ており、フローによってはレコードの状態が変更される可能性があります。デバッグが終了してもロールバックはされません。
トップへ戻る^
- サブフローでのループと配列の処理に関するベストプラクティスはありますか?
回答: Zurichリリースではフロー変数として配列がサポートされていますが、現在はArray.Objectに限定されています。将来のリリースでより多くの配列タイプが計画されています。
- デバッグ中にフローエラー発生後も続行するオプションはありますか?
回答: デバッグに関してはまだありませんが、現在検討中です。フローを構築する際は、エラーが発生する可能性のあるステップをサブフローにカプセル化し、tryロジック、ループ、およびFlow Errorハンドラーを活用してください。 このブログシリーズで詳細をご確認ください: https://sn.works/CoE/ErrorHandling
- スタックした並列タスクを持つIFステートメントをデバッグするにはどうすればよいですか?
回答: 並列ブランチにブレークポイントを設定し、ステップ実行してください。
- ワークフローをフローに変換するより簡単な方法はありますか?
回答: 解決策は検討中です。当面の間は、既存の従来のワークフローを複雑さと実行頻度で評価することをお勧めします。段階的な移行が推奨される戦略です。変更リクエストによって従来のワークフローに取り組む必要がある場合は常に、何年も前のプロセスを現在の要件とテクノロジーに合わせて最新化する機会と捉えてください。フローとサブフローは、従来のワークフローから直接呼び出すことができ、またその逆も可能であるため、段階的で再利用可能な移行が可能です。 より詳細なガイダンスについては、この移行ガイドをご確認ください: https://sn.works/coe/migration/guide
- 役立つ記事のための中央リソースはありますか?
回答: はい、https://sn.works/CoE から始めてください。
トップへ戻る^
Platform Academy フローのパフォーマンスとデバッグ プレゼンテーション.pdf
免責事項: 一部の日本語は、翻訳ソフトウェアを使用してお客様の便宜のために翻訳されています。正確な翻訳をご提供できるよう相当な努力を払っておりますが、いかなる自動翻訳も人間の翻訳者に代わすることはなく、そのようなことは意図されておりません。翻訳は「現状のまま」提供されています。他言語への翻訳の的確性、信頼性または正確性については、明示または黙示を問わず、いかなる保証も行われません。翻訳ソフトには限界があるため、一部のコンテンツが正確に翻訳されていない場合があります。これらの資料の公用言語は英語です。翻訳の際に生じる相違または不一致は、コンプライアンスまたは履行の目的に関しては拘束力を有さず、法的効力はないものとします。
この記事は機械翻訳されております。最新は元となる記事をご覧ください: https://www.servicenow.com/community/workflow-automation-blogs/platform-academy-ask-the-experts-flow...
