HTTP ポーラー

ArcGIS Velocity の HTTP ポーラー タイプのフィードは、指定された URL に HTTP リクエストを送信します。 これは、Web ブラウザーで同じ URL を参照して取得可能なデータを収集します。

更新されたセンサーの値が API から毎分読み込まれます。

使用上の注意

HTTP ポーラー フィードを操作する際には、以下の点に注意してください。

  • このフィードは、構成ウィザードの [フィードのポーリング間隔] ステップで定義されている頻度で HTTP エンドポイントをポーリングしてデータを読み込みます。
  • ポーリング間隔が設定されている場合、ポーリングは、フィードの開始時刻とは関係なく、規則的な時間間隔で発生します。 たとえば、5 分おきにデータをポーリングするようにフィードが設定されている場合に、フィードが 8:03 AM に開始すると、初回のデータ リクエストは 8:05 AM に発生し、次は 8:10 AM に発生し、以降も同じ間隔で発生します。
  • [フィードのポーリング間隔] 値を指定する際には注意が必要です。 ポーリング対象の HTTP エンドポイントが、指定されているポーリング間隔内で応答を返せることを確認します。 フィードの構成で適用したものと同じリクエストを使用して、Web サイトへのリクエストに対する応答時間をテストすることをお勧めします。 このポーリング間隔を、Web サイトへのリクエストに対する通常の応答時間より短い間隔に設定してはなりません。 詳細については、「フィードのポーリング間隔のスケジュール設定」をご参照ください。
  • [POST の本文][URL パラメーター]、および [カスタム ヘッダー] パラメーターは、フィードのグローバル変数をサポートします。 デフォルトでは、フィードのグローバル変数は、エポック時間 (UTC の 1970 年 1 月 1 日からのミリ秒) に変換されます。 必要に応じて、フィードのグローバル変数をエポック秒 (1970 年 1 月 1 日からの秒) および文字列の日時形式に変換できます。 開始後または再開後に初めてフィードが実行される際、$feed.FeedLastScheduledStart 時間は、現在の開始時間から 5 分を引いた時間になります。 フィードの解析変数と、それらが表す時間は以下のとおりです。
    • $feed.FeedStartTime - フィードが開始された時間
    • $feed.FeedScheduledStartTime - フィードの次の繰り返しがスケジュールされている時間。
    • $feed.FeedLastScheduledStartTime - フィードの最後の繰り返しがスケジュールされていた時間。
    フィードの解析変数とそれらが表す時間
  • ArcGIS Velocity サブスクリプション ライセンス レベルには、フィードによって使用できるデータ量に以下の制限があります。 フィードがライセンス レベルの消費制限を超えた場合、ログにメッセージが書き込まれ、制限に達したことをユーザーに通知する電子メールが送信されます。 データの消費が制限を超えた状態が 1 時間以上継続すると、フィードは停止されます。 ArcGIS Velocity ライセンスの詳細については、「ライセンス」をご参照ください。 必要に応じて、Esri の担当者、または Esri テクニカル サポートと連携して、ワークフローをサポートする Velocity ライセンス レベルを検討してください。 ライセンス レベルは以下のとおりです。
    • Standard - 25 KB/秒 (約 100 イベント/秒) でデータを使用して処理します。
    • Advanced - 250 KB/秒 (約 1,000 イベント/秒) でデータを使用して処理します。
    • Dedicated - 2,500 KB/秒 (約 10,000 イベント/秒) でデータを使用して処理します。
  • フィードの接続パラメーターを設定した後で、「入力データの構成」を参照して、スキーマとキー パラメーターの定義方法について確認してください。

OAuth 認証

HTTP ポーラー フィード タイプは、Client Credentials グラント種別または Password グラント種別に準拠した OAuth 2.0 for HTTP エンドポイントを使用した認証をサポートします。 これらの OAuth グラント種別は、アクセス トークンを取得するための HTTP リクエストの構成を含むパターンに準拠し、必要に応じてリフレッシュ トークンを使用し、新しいアクセス トークンを取得するためのリクエストを構成します。 これらは、通常 HTTP ポーラー フィード タイプの一部として構成されるデータ リクエストに付加されます。

アクセス トークン リクエストの構成時に、OAuth 認証サーバーからのレスポンスに含まれるアクセス トークン、リフレッシュ トークン (オプション)、および有効期限 JSON キー フィールドを特定するよう求められます。 有効期限を選択した場合は、有効期限のタイプ (期間またはタイムスタンプ) と単位を定義する必要があります。

アクセス トークン リクエストからリフレッシュ トークンが特定された場合は、グローバル変数 $refreshToken を使用して、リフレッシュ トークン リクエストの構成でリフレッシュ トークンが使用される場所を定義する必要があります。

最後に、データ リクエストの構成に戻り、グローバル変数 $accessToken を使用して、アクセス トークンが使用される場所を定義する必要があります。 これは多くの場合、Authorization カスタム ヘッダーの Bearer $accessToken 値に含まれています。 $accessToken は、POST 本文、URL パラメーター、および URL (たとえば https://<<company.domain>>/$accessToken/<<method>>?<<url params>>) でも使用できます。

処理中は、OAuth 認証が構成されたフィードによってアクセス トークンが管理され、データ取得時のエラーも適宜処理されます。 たとえば、リフレッシュ トークンのリクエストと有効期限が定義されている場合、フィードはアクセス トークン リクエストで最初に取得したリフレッシュ トークンを使用して、トークンの有効期限が切れた場合に新しいトークンを取得します。

OAuth を使用してフィードを作成する際は、以下に注意してください。

  • 作成時に、認証サーバーと関連付けられたデータ エンドポイントへの複数のリクエストが発生します。 一部の API では、特定のリクエストに対するレート制限が実装されており、これがフィードの作成に影響する可能性があります。
  • セキュリティ上の理由から、アクセス トークンおよびリフレッシュ トークン リクエストの POST ボディは、認証パラメーターを編集する際に再構成する必要があります。

パラメーター

以下は、HTTP ポーラー フィードのパラメーターです。

パラメーター説明データ タイプ

URL

外部からアクセス可能な HTTP エンドポイントの完全 URL。

このパラメーターは、$accessToken グローバル変数をサポートしています。

String

HTTP メソッド

HTTP エンドポイントに対して使用する HTTP メソッドで、[GET] または [POST] を指定します。

[POST] を選択した場合、メッセージの本文を指定することができます。

String

POST body

POST HTTP リクエストを送信するときに含めるメッセージの本文。

x-www-form-urlencoded やその他の一般的なテキスト コンテンツ タイプを選択できます。 Content-type ヘッダーも設定されます。

このパラメーターは、[HTTP メソッド] パラメーターが [POST] に設定されている場合にのみ適用されます。

このパラメーターは、フィードおよび $accessToken グローバル変数をサポートしています。

String

認証

HTTP エンドポイントにアクセスするために使用する認証の種類を指定します。 オプションには、[なし][基本][証明書]、および [OAuth] があります。

String

ユーザー名

HTTP エンドポイントにアクセスするためのユーザー名。

このパラメーターは、[認証] パラメーターが [基本] に設定されている場合にのみ適用されます。

String

パスワード

HTTP エンドポイントにアクセスするためのパスワード。

このパラメーターは、[認証] パラメーターが [基本] に設定されている場合にのみ適用されます。

パスワード

証明書の URL

HTTP エンドポイントにアクセスするためのクライアント証明書の場所の URL。

このパラメーターは、[認証] パラメーターが [証明書] に設定されている場合にのみ適用されます。

String

パスワード

クライアント証明書のパスワード (設定されている場合)。

このパラメーターは、[認証] パラメーターが [証明書] に設定されている場合にのみ適用されます。

パスワード

カスタム ヘッダー

指定した HTTP エンドポイントに送信される HTTP リクエストに含めるオプションのカスタム ヘッダー。

たとえば、カスタム ヘッダーを使用して、サード パーティ API キーや認証ヘッダーを指定できます。

このパラメーターは、フィードおよび $accessToken グローバル変数をサポートしています。

キーと値のペア

URL パラメーター

指定した HTTP エンドポイントに送信される HTTP リクエストの URL に含める、オプションの URL パラメーター。

パラメーターは [URL] パラメーターでも設定できますが、ここで入力された URL パラメーターは [URL] パラメーターに指定された一致するパラメーターをオーバーライドします。

ここで定義されるパラメーターは、常に URL エンコードされます。

このパラメーターは、フィードおよび $accessToken グローバル変数をサポートしています。

キーと値のペア

長いポーリング

Web サーバーに対してポーリングし、サーバーが新しいデータを送信するまで接続が開かれた状態を維持するかどうかを指定します。 新しいデータを受信するとただちに新しいリクエストを送信します。

注意:

これはほとんどの Web サーバーでは一般的でない、特別な Web サーバー構成です。

Boolean

グローバル変数

フィードのグローバル変数をカスタムの日時形式に変換します。 このパラメーターはオプションです。

このパラメーターは、フィードおよび $accessToken グローバル変数をサポートしています。

日時形式の設定 (エポックミリ秒、エポック秒、文字列形式) の詳細については、「日時パラメーター」をご参照ください。

String

その他のログ

未処理の HTTP リクエストと Velocity が発行した応答のログ出力を有効にするかどうかを指定します。 このパラメーターはオプションです。

注意:

このパラメーターは、トラブルシューティングの目的でのみ有効にし、トラブルシューティングが完了したら無効にします。 有効にした後は、フィードを開始すると、デバッグ レベルのログがフィード ログ ページで使用できるようになります。 必要に応じて、トラブルシューティングについて Esri テクニカル サポートにお問い合わせください。

Boolean

検討事項および制限事項

HTTP ポーラー フィードを使用する際は、以下の点に注意してください。

  • HTTP エンドポイントにはインターネット上で外部からアクセスできなければなりません。
  • ポーリング対象の HTTP レスポンスまたはファイルのサイズが 16 MB を超えていてはなりません。 ポーリング対象のデータが 16 MB を超えている場合、フィーチャは使用されません。
  • このタイプのフィードは 1 秒あたり約 3,000 ポイント フィーチャ以下の速度のリアルタイム データに使用することをお勧めします。 サポートされる速度は、データ属性の数、受信データの形式、ポリラインまたはポリゴン フィーチャの複雑度によって異なります。