Nach der Veröffentlichung von Routing-Services aus einem mit Live-Verkehrsdaten konfigurierten Netzwerk-Dataset muss sichergestellt werden, dass die von diesen Services verwendeten Live-Verkehrsdaten in regelmäßigen Intervallen aktualisiert werden. Dies kann mit dem nachfolgend beschriebenen Workflow erzielt werden:
Sie müssen mit der Windows-Aufgabenplanung ein Python-Skript konfigurieren, dass alle zwei Minuten ausgeführt wird. Mit diesem integrierten Windows-Dienstprogramm können Benutzer die Implementierung von Tasks und Programmen zu bestimmten Zeiten automatisieren. Während Sie die Bedienoberfläche der Windows-Aufgabenplanung verwenden können, um einen Task zur Aktualisierung von Live-Verkehrsdaten zu erstellen, wird in diesem Abschnitt derselbe Workflow unter Verwendung des Befehlszeilendienstprogramms schtasks beschrieben.
Aktualisieren von Live-Verkehrsdaten alle zwei Minuten durch Ausführung eines Python-Skripts mit der Windows-Aufgabenplanung Im Beispiel wird vorausgesetzt, dass das Installationsverzeichnis von ArcGIS Server C:\Program Files\ArcGIS\Server lautet.
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"Hinweis:
Die oben genannten Schritte müssen auf jedem Computer in einer ArcGIS Server-Site mit mehreren Computern durchgeführt werden.
Das Python-Skript generiert ein Protokoll namens update_traffic_cache_scheduler.log, das in dem Standardordner gespeichert wird, in den ArcGIS Server seine Protokolle schreibt, wie z B. c:\arcgisserver\logs. Sie können diese Protokolldatei überprüfen, um festzustellen, ob bei der Implementierung des Skripts Fehler aufgetreten sind.
Überprüfen des Live-Verkehrsdatenstatus
Nachdem Sie die Live-Verkehrsdaten so eingerichtet haben, dass sie in regelmäßigen Intervallen aktualisiert werden, können Sie überprüfen, ob die Verkehrsdaten erfolgreich aktualisiert werden, indem Sie das Werkzeug GetLiveTrafficStatus innerhalb des Geoverarbeitungsservices NetworkAnalysisUtilities ausführen. Dieser Service ist in demselben Ordner verfügbar, in dem auch andere Routing-Services veröffentlicht wurden. Wenn die Routing-Services beispielsweise in einem Service-Ordner mit dem Namen Routing veröffentlicht wurden, lautet die URL für das GetLiveTrafficStatus-Werkzeug https://machine.example.com/webadaptorname/rest/services/Routing/NetworkAnalysisUtilities/GPServer/GetLiveTrafficStatus. Die Ausgabe von GetLiveTrafficStatus kann verwendet werden, um zu überprüfen, ob die Verkehrsdaten erfolgreich aktualisiert werden.
Die Beispiel-Ausgabe aus dem GetLiveTrafficStatus-Werkzeug zeigt, dass die letzte Aktualisierung erfolgreich war, da für isLastUpdateSuccessful der Wert true zurückgegeben wurde. Wenn bei der letzten Aktualisierung Fehler aufgetreten sind, wird isLastUpdateSuccessful auf false festgelegt, und die Gründe für den Fehler werden als Teil der Eigenschaft lastUpdatedMessages zurückgegeben.
{
"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": [
]
}