OpenResty Edge での Webhook 設定方法:ゲートウェイサーバーのオフラインアラート
OpenResty Edge で Webhook を設定するには、Global Config → Webhooks を開いて Webhook を作成し、Gateway Server Offline(ゲートウェイサーバーのオフライン)などのイベントを購読します。以降、そのイベントが発生するたびに、Edge Admin がお客様自身で実装したカスタム API へ自動的に HTTP リクエストを送信します。Gateway Server Offline イベントは、Edge の能動的なヘルスチェック(プローブ)が検知したオフライン、サーバー自身の異常、Edge Admin での手動オフラインのいずれも対象とし、サーバーがオフラインになるあらゆる原因をカバーするため、アラート用の API ですべての停止を検知できます。本チュートリアルでは、こうした Webhook の作成・トリガー・確認までの手順を解説します。イベント駆動型の Webhook 通知がポーリングベースの監視より優れている理由については、OpenResty Edge Webhook のメカニズム解説をご覧ください。
OpenResty Edge Admin での Webhook の作成
OpenResty Edge の Web コンソールにアクセスしましょう。これは当社のコンソールのサンプル環境です。ユーザーごとに専用の環境が提供されます。
まず、Webhook を作成する必要があります。「Global Config」ページに移動します。
「Webhooks」を選択します。
Webhook を作成します。
ここでは、ゲートウェイサーバーがオフラインになった際に、お客様が実装したカスタム API に HTTP リクエストを送信する Webhook を作成します。
多数の組み込みイベントが用意されており、お客様のご要望に応じてさらに追加することも可能です。
ここでは「Gateway Server Offline」イベントを選択します。
「Create」をクリックすると、新しい Webhook が追加されます。
ゲートウェイサーバーのオフラインイベントによる Webhook のトリガー
この Webhook をトリガーするために、ゲートウェイサーバーをオフライン状態に設定してみましょう。
このサーバーを使用します。
設定ページを開きます。
このサーバーは現在オンライン状態であることにご注意ください。
オフライン状態に設定します。
保存します。
Webhook の実行履歴の確認
では、Webhooks ページで実行履歴を確認しましょう。
「Webhooks」を選択します。
「Detail」ボタンをクリックしてください。
Webhook の実行履歴を確認できます。これは、トリガーされたイベントが正常に送信されたことを意味します。
ここでデモンストレーションした Edge Admin での手動オフライン設定だけでなく、OpenResty Edge は各ゲートウェイサーバーを能動的にヘルスチェック(プローブ)しており、そのプローブがサーバーの停止を検知した場合や、サーバー自身に異常が発生した場合にも Gateway Server Offline イベントが発生します。こうしたイベントを起点にアラートや運用の自動化を組み立てる考え方については、OpenResty Edge Webhook:ポーリングを置き換えるイベント駆動型ゲートウェイ通知をご覧ください。
よくある質問
OpenResty Edge では、どのようなイベントで Webhook をトリガーできますか?
OpenResty Edge には、Webhook が購読できる組み込みイベントが多数用意されています。本チュートリアルで使用した Gateway Server Offline(ゲートウェイサーバーのオフライン)イベントもその一つです。必要なイベントがまだ組み込まれていない場合は、ご要望に応じて追加することも可能です。購読中のイベントが発生すると、Edge Admin は設定済みのカスタム API へ HTTP リクエストを送信します。
Gateway Server Offline イベントは、手動でサーバーをオフラインにしたときだけ発生しますか?
いいえ。Edge Admin での手動オフラインに加え、OpenResty Edge は各ゲートウェイサーバーを能動的にヘルスチェック(プローブ)しており、そのプローブがサーバーの停止を検知した場合、サーバー自身に異常が発生した場合、あるいは手動でオフラインにした場合のいずれでも Gateway Server Offline イベントが発生します。そのため、このイベントを購読した Webhook は、計画的な操作だけでなく、あらゆる停止を検知できます。
Webhook が実際に送信されたことを確認するにはどうすればよいですか?
Edge Admin の Webhooks ページを開き、対象の Webhook の「Detail」ボタンをクリックすると、その実行履歴を確認できます。ここに記録された各エントリは、トリガーされたイベントがカスタム API へ正常に送信されたことを示します。そのため、お客様側のエンドポイントに追加の計装を行わなくても、送信を確認できます。
このチュートリアルが気に入っていただけましたら、ぜひ本ブログサイトおよび弊社の YouTube チャンネルをご購読ください。ありがとうございます!
OpenResty Edge について
OpenResty Edge は、マイクロサービスと分散トラフィックアーキテクチャ向けに設計された多機能ゲートウェイソフトウェアで、当社が独自に開発しました。トラフィック管理、プライベート CDN 構築、API ゲートウェイ、セキュリティ保護などの機能を統合し、現代のアプリケーションの構築、管理、保護を容易にします。OpenResty Edge は業界をリードする性能と拡張性を持ち、同時接続数の多い高負荷なシナリオの厳しい要求を満たすことができます。K8s などのコンテナアプリケーショントラフィックのスケジューリングをサポートし、大量のドメイン名を管理できるため、大規模ウェブサイトや複雑なアプリケーションのニーズを容易に満たすことができます。
著者について
章亦春(Zhang Yichun)は、オープンソースの OpenResty® プロジェクトの創始者であり、OpenResty Inc. の CEO および創業者です。
章亦春(GitHub ID: agentzh)は中国江蘇省生まれで、現在は米国ベイエリアに在住しております。彼は中国における初期のオープンソース技術と文化の提唱者およびリーダーの一人であり、Cloudflare、Yahoo!、Alibaba など、国際的に有名なハイテク企業に勤務した経験があります。「エッジコンピューティング」、「動的トレーシング」、「機械プログラミング」 の先駆者であり、22 年以上のプログラミング経験と 16 年以上のオープンソース経験を持っております。世界中で 4000 万以上のドメイン名を持つユーザーを抱えるオープンソースプロジェクトのリーダーとして、彼は OpenResty® オープンソースプロジェクトをベースに、米国シリコンバレーの中心部にハイテク企業 OpenResty Inc. を設立いたしました。同社の主力製品である OpenResty XRay(動的トレーシング技術を利用した非侵入型の障害分析および排除ツール)と OpenResty Edge(マイクロサービスおよび分散トラフィックに最適化された多機能ゲートウェイソフトウェア)は、世界中の多くの上場企業および大企業から高い評価を得ております。OpenResty 以外にも、章亦春は Linux カーネル、Nginx、LuaJIT、GDB、SystemTap、LLVM、Perl など、複数のオープンソースプロジェクトに累計 100 万行以上のコードを寄与し、60 以上のオープンソースソフトウェアライブラリを執筆しております。
翻訳
英文版 の原文と日本語訳版(本文)をご用意しております。読者の皆様による他の言語への翻訳版も歓迎いたします。全文翻訳で省略がなければ、採用を検討させていただきます。心より感謝申し上げます!





































