Skip to main content

高度なサービス プロパティ

ワークフローによっては、公開したジオプロセシング サービスのプロパティを管理者が調整する必要があります。 これらの調整は、スタンドアロン サーバーとフェデレーション サーバーの両方に適用されます。 次のようなケースがあります。

  • 大量のメモリーを必要とする大規模なラスター データセットを使用した空間解析。

  • Web ツールやジオプロセシング サービス用の大きな入力ファイルをアップロード。

  • パフォーマンスの最適化。

  • カスタム ログの要件。

  • ジオプロセシング サービスの失敗時に追加診断出力を取得。

  • ジオプロセシング サービス内の個々のタスクを視覚化。

これらのプロパティの調整が必要な他の一般的なシナリオには、パフォーマンスの最適化、カスタム ログ要件、ジオプロセシング サービス失敗時の追加診断出力の取得、ジオプロセシング サービス内の個々のタスクの視覚化制御などがあります。

以下に説明するほとんどのプロパティは、Administrator REST API でのみ設定できます。 ユーザーや管理者が Administrator REST API にアクセスできるようになったら、変更が必要なジオプロセシング サービスのサービス プロパティを編集する必要があります。

ヒープ サイズの変更

ヒープ サイズ プロパティは、ArcGIS Pro から Web ツールやジオプロセシング サービスにアクセスする際にクライアントから提供される最大ファイル サイズと、ジオプロセシング サービスが使用できる最大メモリーを制御します。 ヒープ サイズは、すべてのジオプロセシング サービスに対してサーバー レベルで設定することも、単一サービスに対して設定することもできます。

個々のサービスのヒープ サイズを変更すると、サーバー全体のすべてのサービスのヒープ サイズを変更するよりも、パフォーマンスが向上します。 各サービスのデフォルト ヒープ サイズは 64 MB です。 入力ファイルまたはフィーチャクラスがデフォルト サイズよりも大きい場合は、次の手順に従って、サービス ヒープ サイズを変更します。

  1. 変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。

  2. 既存の frameworkProperties、通常はすべてのサービス プロパティの中で下部に近いプロパティを調べます。

    JSON 形式のサービス プロパティの例

  3. javaHeapSizeframeworkProperties にリストされていない場合は、例 {"javaHeapSize":"128"} を追加します。 javaHeapSize が含まれている場合は、適切な量まで値を増やします。

  4. 編集を保存 をクリックし、編集を保存して終了します。

サーバー全体のすべてのジオプロセシング サービスのヒープ サイズを変更するには、以下の手順を実行します。 SOC の最大ヒープ サイズのデフォルト値は、64 MB に設定されています。 適切な値まで増やします。

  1. コンピューターの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/machines/machinename/edit

  2. SOC maximum heap size (in MB) の値を増やします。

  3. 編集を保存 をクリックして、編集を終了します。

アップロード サイズの設定

アップロード サイズの設定は、REST エンド ポイントを使用してサービスに接続するクライアントアップロードできるファイル サイズを制御するものです。 通常、これらのクライアントは、カスタム Web アプリを通じて、サービスを使用する Web クライアントです。デフォルトでは、制限は 2 GB に設定されます。 この設定によって適切な値を指定できるため、サービスに大きなサイズのファイルがアップロードされるのを防ぐことができます。

アップロード サイズを設定するには、変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。 maxUploadFileSize プロパティの値を更新します。 最大ファイル アップロード サイズを 100 MB に制限するサンプル エントリーは "maxUploadFileSize": 100, になります。

注意:

Web ツールを公開するときに、Web ツールとして共有ツール構成 パネルで、アップロード チェックボックスがオンになっていることを確認します。 また、ArcGIS Server Manager でサービスの ケーパビリティー 設定ページを使用して、既存のサービスでこの設定を有効にすることもできます。

アップロード タイプの設定

Web ツールにアップロードできるのは、特定のファイルに限られます。 ファイルは、拡張子のタイプで制限されます。拡張子のタイプは、サービス レベルで設定されます。

アップロード タイプを設定するには、変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。 変更を許可したいファイル拡張子を追加して allowedUploadFileTypes プロパティを更新します。 .kml ファイルと .gpx ファイルの変更を許可するサンプル プロパティは "allowedUploadFileTypes": ".kml,.gpx" です。

注意:

Web ツールを公開するときに、Web ツールとして共有ツール構成 パネルで、アップロード チェックボックスがオンになっていることを確認します。 また、ArcGIS Server Manager でサービスの ケーパビリティー 設定ページを使用して、既存のサービスでこの設定を有効にすることもできます。

最大ドメイン数の変更

maxDomainCodeCount 設定は、サービスの応答で返されるドメインの数を制御します。 ドメインの説明は、フィーチャ出力の応答で返されるコードと対応しています。 この設定のデフォルトは 1000 です。 出力フィーチャ内のドメインが 1,000 を超える場合、ドメイン情報は返されません。 ドメイン情報を返すと、応答のサイズが増加する可能性があります。 ドメインが必要でない場合、この値を 0 またはサービス内にあるドメインの数より、小さい値に設定します。

最大ドメイン数を変更するには、変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit で、maxDomainCodeCount プロパティを更新して最大制限を設定します。 最大ドメイン数を 50 に制限するサンプルは "maxDomainCodeCount": 50, になります。

ローカル一時フォルダー

ローカル一時フォルダーは、サーバーが複数のコンピューターを持つクラスターに属している場合、または UNC パスを使用してディレクトリーが参照される場合に、ArcGIS Server が中間出力を書き込むディレクトリーです。 これにより、中間データを UNC パスのスクラッチ ジオデータベースやスクラッチ フォルダーに書き込む手間を省いて、パフォーマンスを向上できます。 完了時に、結果がローカルの一時フォルダーからジョブ ディレクトリー (UNC パスであることができる) にコピーされます。 Windows では、ArcGIS Server 用の典型的なローカル一時フォルダーは c:/Users/arcgisuser/AppData/Local/Temp/system/servicename_gpserver/jobID/scratch です。 現在、サーバーのデプロイメント後にこの一時フォルダーの場所を変更することはできません。

同期サービスでのジョブ ディレクトリーの再利用

Web ツールが同期ジオプロセシング サービスに基づいている場合、"reusejobdir": "true" を適用することで、ジョブ ディレクトリーを再利用してパフォーマンスを向上させることができます。 通常、同期ジオプロセシング サービスを実行するたびに、サーバー コンピューターの arcgisjobs フォルダーにジョブ フォルダーが作成されます。 そのジョブ フォルダーは、完了時に ArcGIS Server によって削除されます。 reusejobdir プロパティを true に設定することで、ジョブの実行が終了した後もジョブ フォルダーが残されます。 これにより、次の実行のためにテンポラリー GDB とテンポラリ フォルダーを作成する時間が節約されるため、パフォーマンス上のメリットが得られます。 必要に応じて、このプロパティを "false" に戻すかこのプロパティを削除する場合は、管理者に連絡して、このサービスの既存のジョブ フォルダーを削除します。

変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。

以下は、reusejobdir プロパティを示す単純化した JSON です。 その他のプロパティは、このプロパティに関連する変更をハイライトするために非表示になっています。

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "reusejobdir": true,
     "executionType": "Synchronous"
 },
 "portalProperties": {},
 "extensions": []
}

ArcGIS Server ログにメッセージを書き込む

Web ツールが ArcGIS Server 11.3 以降に公開されている場合、Web ツールからのメッセージのコピーを ArcGIS Server ログに含めることができます。 ArcGIS Server ログのメッセージ レベルは、Web ツールのメッセージ レベルと一致します。 Web ツールのメッセージには、エラー、警告、情報の 3 つのレベルが存在し、それぞれ ArcGIS Server の重大、警告、情報と一致します。 スクリプト ツール メッセージを使用して、Web ツール メッセージを手動で設定します。 多くのジオプロセシング ツールには、プリセット メッセージも含まれています。 ArcGIS Server にメッセージのログを適切に記録するには、適宜サーバー ログ設定を指定します。

変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。

logGPMessages プロパティを示す単純化した JSON。 その他のプロパティは、このプロパティに関連する変更をハイライトするために非表示になっています。

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "logGPMessages": true,
     "executionType": "Asynchronous"
 },
 "portalProperties": {},
 "extensions": []
}

特殊なケースで結果を返す

非同期ジオプロセシング サービスまたは非同期ジオプロセシング サービスに基づく Web ツールが失敗した場合またはキャンセルされた場合、結果はありません。 このような Web ツールまたはジオプロセシング サービスが ArcGIS Server 11.5 以降に公開されており、ArcGIS REST API の results または result リソースを介してそのツールまたはサービスにアクセスしている場合は、引き続き ArcGIS Server を有効にして結果を返すことができます。 同期ジオプロセシング サービスまたは同期ジオプロセシング サービスに基づく Web ツールを使用している場合、この機能は使用できません。 失敗したジョブまたはキャンセルしたジョブの場合、ArcGIS Pro で結果にアクセスすることはできません。

saveRESTResultsOnFailOrCancel プロパティを設定するには、変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。

saveRESTResultsOnFailOrCancel プロパティを示す単純化した JSON。 その他のプロパティは、このプロパティに関連する変更をハイライトするために非表示になっています。

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "saveRESTResultsOnFailOrCancel": true,
     "executionType": "Asynchronous"
 },
 "portalProperties": {},
 "extensions": []
}

特定ツールのブロック

Web ツールまたはジオプロセシング サービスを公開する際、場合によっては、特定のタスクへのアクセスを無効化またはブロックする必要があります。 ArcGIS Server 11.5 以降では、blockedTools または allowedTools プロパティをサービス プロパティに追加し、特定のツールをブロックします。

blockedTools プロパティでは、特定のツールを利用できないようにします。 allowedTools プロパティでは、特定のツールのみを利用できるようにします。他のすべてのツールにはアクセスできなくなります。 必要に応じてこれらのプロパティを使い分けてください。 タスクを指定するには、タスクの名前または表示名を使用します。 タスクの名前が別のタスクの表示名と一致する場合、両方のタスクが認識され、ともにブロックまたは許可されます。

変更したいジオプロセシング サービスの サービス プロパティの編集 エンドポイントにアクセスします。 通常は https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit になります。

ブロックする複数のタスク名を持つ blockedTools プロパティを示す、単純化した JSON。 複数の名前はセミコロンで区切って指定します。

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "blockedTools": "extractData;bufferInputs",
     "executionType": "Synchronous"
 },
 "portalProperties": {},
 "extensions": []
}