ポリシーログの設定

Flex Gateway ポリシー開発キット (PDK) は、API インスタンス ID、ポリシー ID、要求 ID を含むログメッセージを生成するログメカニズムを提供します。

Pdk::logger;​ パッケージを使用して、以下のマクロでカスタムログを挿入します。

  • logger::debug!

  • logger::info!

  • logger::warn!

  • logger::error!

マクロは Rust std::format! macro​ と同じ動作をします。最初のパラメーターは形式文字列リテラルである必要があります。リテラルでは ​{}​ を使用してパラメーターを渡します。例:

use pdk::logger;

// [...]

let value = "there!";
logger::debug!("Hello there!");
logger::info!("Hello {}", value);
logger::warn!("Hello {value}");
logger::error!("Hello {}", "there!");

すべての例は、次の形式で Flex Gateway のログに表示されます。

[flex-gateway-envoy][<log-level>] wasm log <policy-name>.<api-instance-name> main: [policy: <policy-name>][api: <api-instance-name>][req: <request-id> ] Hello there!

Flex Gateway ログの表示に関する詳細は、Monitoring Flex Gatewayを参照してください。