Skip To Content

Обновление текущих данных о дорожном движении

После публикации сервисов маршрутизации из набора сетевых данных, настроенного на текущий трафик, важно обеспечить регулярное обновление данных о трафике, используемых этими сервисами. Это можно сделать, следуя рабочему процессу, описанному ниже:

Вам необходимо настроить скрипт Python для запуска каждые две минуты с помощью планировщика задач Windows. Эта встроенная утилита Windows позволяет пользователям автоматизировать выполнение задач и программ в заданное время. Хотя вы можете использовать пользовательский интерфейс планировщика задач Windows для создания задачи по обновлению данных о текущем дорожном движении, в этом разделе описывается тот же рабочий процесс с использованием утилиты командной строки под названием schtasks.

Обновляйте текущие данные о дорожном движении каждые две минуты, запустив скрипт Python с помощью планировщика задач Windows. В приведенном примере подразумевается, что 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. Вы можете проверить этот файл журнала, чтобы определить, возникли ли какие-либо ошибки во время выполнения скрипта.

Проверка статуса данных о дорожном движении в реальном времени

После того как вы настроили регулярное обновление данных о дорожном движении в режиме реального времени, вы можете проверить, успешно ли обновляются данные, запустив инструмент GetLiveTrafficStatus в сервисе геообработки NetworkAnalysisUtilities. Этот сервис доступен в той же папке, где были опубликованы другие сервисы маршрутизации. Например, если сервисы маршрутизации были опубликованы в папке сервиса с именем Routing, URL-адрес инструмента GetLiveTrafficStatus будет 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": [
  
 ]
}