ライブ交通量を使用して構成されているネットワーク データセットからルート検索サービスを公開した後、これらのサービスが使用するライブ交通量データが定期的に更新されるようにすることが不可欠です。 これを実現するには、以下に説明するワークフローに従います。
Windows タスク スケジューラを使用して 2 分ごとに実行するよう Python スクリプトを構成する必要があります。 この組み込みの Windows ユーティリティーを使用すると、指定した時間でのタスクやプログラムの実行を自動化できます。 Windows タスク スケジューラのユーザー インターフェイスを使用して、ライブ交通量データを更新するタスクを作成できますが、このセクションでは、schtasks というコマンドライン ユーティリティーを使用した同じワークフローについて説明します。
Windows タスク スケジューラを使用して Python スクリプトを実行することで、ライブ交通量を 2 分ごとに更新します。 この例では、ArcGIS Server のインストール場所が C:\Program Files\ArcGIS\Server であることを前提としています。
schtasks /create /tn "ArcGISLiveTrafficDataUpdater" /tr "\"C:\Program Files\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\python.exe\" \"C:\Program Files\ArcGIS\Server\framework\runtime\ArcGIS\Resources\ArcToolBox\Services\routingservices\update_traffic_cache_scheduler.py\"" /sc minute /mo 2 /ru "SYSTEM"
注意:
複数台のコンピューターによる ArcGIS Server サイトにある各コンピューターで、上記の手順を実行する必要があります。
Python スクリプトは、update_traffic_cache_scheduler.log という名前のログ ファイルを生成します。このファイルは、ArcGIS Server がそのログを書き込むデフォルト フォルダー (c:\arcgisserver\logs など) に格納されます。 このログ ファイルを確認して、スクリプトの実行中にエラーが発生しているかどうかを判断できます。
ライブ交通量データのステータスの確認
定期的に更新するようにライブ交通量データを設定した後、NetworkAnalysisUtilities ジオプロセシング サービス内で GetLiveTrafficStatus ツールを実行することで交通量データが正常に更新されているかどうかを確認できます。 このサービスは、他のルート検索サービスが公開されるフォルダーと同じフォルダーにあります。 たとえば、ルート検索サービスが Routing という名前のサービス フォルダーに公開された場合、GetLiveTrafficStatus ツールの URL は https://machine.example.com/webadaptorname/rest/services/Routing/NetworkAnalysisUtilities/GPServer/GetLiveTrafficStatus になります。 GetLiveTrafficStatus からの出力を使用して、交通量データが正常に更新されているかどうかを確認できます。
GetLiveTrafficStatus ツールの出力の例は、isLastUpdateSuccessful が true なので、最後の更新が成功であったことを示しています。 最後の更新中にエラーが発生した場合、isLastUpdateSuccessful は false に設定され、失敗の理由が lastUpdatedMessages プロパティの一部として返されます。
{
"results": [
{
"paramName": "status",
"dataType": "GPString",
"value": {
"cachePath": "C:\\NA\\RoutingServices\\traffic-cache\\openlr.3a795f46cf77473fb1dc606ef73a2cb5",
"isLastUpdateSuccessful": true,
"isUpdateInProgress": false,
"roadClosuresDataAvailable": true,
"roadClosuresDataSize": 64427318,
"speedDataAvailable": true,
"speedsDataSize": 3977019303,
"tempDataSize": 365970076,
"trafficCacheStatus": {
"endTimeWindow": 1744065360000,
"lastCreatedFileNames": [
"speeds.20250407132800.1.ff.dat",
"speeds.20250407213200.1.nff.dat",
"road_closures.20250407213200.1.dat",
"speeds.20250407213200.info.dat",
"speeds.20250407213600.info.dat"
],
"lastDecodingElapsedTime": 0,
"lastRemovedFileNames": [
"speeds.20250407173200.info.dat",
"road_closures.20250407173200.1.dat"
],
"lastUpdatedElapsedTime": 11582,
"lastUpdatedMessages": [
],
"lastUpdatedTime": 1744062137882,
"remainingSpeedLocationsToMatch": 0,
"roadClosureLocationsCount": 23153,
"selectedTrafficDataRegions": [
"CAN",
"MEX",
"USA_N",
"USA_SW",
"USA_SE",
"USA_M"
],
"speedLocationsCount": 1468719,
"startTimeWindow": 1744047330000
}
}
}
],
"messages": [
]
}