Wir beheben einen WebGISDR-Fehler in einer ArcGIS Enterprise 11.5 Bereitstellung auf Linux und haben das Problem auf den föderierten ArcGIS Notebook Server exportSite Vorgang eingegrenzt.
WebGISDR erhält HTTP 500 beim Export des Notebook Servers. Wir haben das Problem unabhängig von WebGISDR reproduziert, indem wir eine authentifizierte Anfrage direkt an die Notebook Server exportSite Admin API gestellt haben:
POST /notebooks/admin/exportSite
Der Vorgang gibt konsistent zurück:
HTTP 500 - Exportvorgang fehlgeschlagen. null
Mit aktiviertem temporärem DEBUG-Logging startet der Notebook Server erfolgreich:
- den Exportvorgang;
- erstellt
/opt/arcgis/notebookserver/temp/tmp-carbon-export-*; - erstellt den temporären Konfigurationsspeicher;
- aktualisiert die System-Eigenschaften der Admin API; und
- kopiert die Site-Konfiguration in den temporären Konfigurationsspeicher.
Unmittelbar danach schlägt der Export mit folgendem Fehler fehl:
java.lang.NullPointerException
bei java.util.Objects.requireNonNull(...)
bei sun.nio.fs.UnixFileSystem.getPath(...)
bei java.nio.file.Path.of(...)
bei java.nio.file.Paths.get(...)
bei com.esri.arcgis.carbon.common.FileUtil.copyFile(FileUtil.java:652)
bei com.esri.arcgis.carbon.admin.SiteManager.exportSite(SiteManager.java:2027)
bei com.esri.arcgis.carbon.admin.rest.site.SiteResource.exportSite(SiteResource.java:329)
Wir haben das temporäre Verzeichnis tmp-carbon-export-* erfasst, bevor der Notebook Server es gelöscht hat. Es enthält backupRestoreInfo.json und den wesentlichen Notebook Server Konfigurationsspeicher, einschließlich Maschinenkonfiguration, Serververzeichnisse, Notebook-Laufzeitdefinitionen/-manifeste, Sicherheitskonfiguration, Web Adaptor-Konfiguration, Zertifikat-Keystore und Container-Metadaten.
Der Vergleich des aktiven Konfigurationsspeichers mit dem erfassten Export-Konfigurationsspeicher zeigte nur erwartete .lock Dateien, die ausgelassen wurden; keine wesentlichen Konfigurationsdateien fehlten.
Wir haben auch getestet, ob das Problem damit zusammenhängt, dass es sich um einen neu bereitgestellten/bisher ungenutzten Notebook Server handelt. Ein Standard-Notebook wurde erstellt, gespeichert und erfolgreich ausgeführt. Dies initialisierte einen laufenden Notebook-Container, Arbeitsbereich-Artefakte und füllte Notebook Server System-Job-Datensätze.
Als zusätzlichen Funktionstest führte das Notebook erfolgreich ArcGIS API for Python Code aus mit:
from arcgis.gis import GIS
gis = GIS("home")
print("Verbunden mit:", gis.properties.name)
print("Portal-URL:", gis.url)
print("Angemeldet als:", gis.users.me.username)
print("Portal-Version:", gis.properties.currentVersion)
Das Notebook authentifizierte sich erfolgreich am föderierten Portal und gab zurück:
Verbunden mit: ArcGIS Enterprise
Portal-URL: https://gis.xyz.com/portal
Angemeldet als: siteadmin
Portal-Version: 2025.1
Dies bestätigt, dass normale Ausführung des Notebook Server Containers, Ausführung der ArcGIS API for Python, Portal-Authentifizierung und Kommunikation mit dem föderierten Portal funktionieren.
Nach dem Erstellen, Speichern und Ausführen des Notebooks testeten wir erneut den direkten Notebook Server exportSite Vorgang. Er schlägt weiterhin identisch fehl mit:
HTTP 500 - Exportvorgang fehlgeschlagen. null
Daher scheint der Fehler nicht durch das Fehlen von Benutzer-Notebooks, mangelnde Initialisierung beim ersten Gebrauch, Unfähigkeit zum Starten von Notebook-Containern oder Unfähigkeit der Notebooks zur Kommunikation mit dem Portal verursacht zu sein.
Wir haben außerdem validiert:
- Portal 194; Notebook Server Föderation/Konfiguration
- Notebook Server 192; konfigurierte Portal-URL-Konnektivität
- TLS-Konnektivität
- erfolgreichen Start und Ausführung des Notebook Containers
- erfolgreiche Ausführung der ArcGIS API for Python und Portal-Authentifizierung
- registrierte Notebook Server Verzeichnisse und Pfade
- Dateisystemberechtigungen und verfügbaren Speicherplatz auf der Festplatte
- Notebook Server Zertifikat-/Keystore-Artefakte
- Erstellung und Nutzung des temporären Exportverzeichnisses
- erfolgreiche Erstellung von
backupRestoreInfo.json - erfolgreiches Kopieren des wesentlichen Notebook Server Konfigurationsspeichers
Der Fehler tritt daher offenbar nachdem die Site-Konfiguration kopiert wurde auf, wenn SiteManager.exportSite() FileUtil.copyFile() with what appears to be a null path.
Questions:
- Is this a known ArcGIS Notebook Server 11.5
exportSite issue? - What additional file or artifact does
SiteManager.exportSite() attempt to copy at this stage of the export? - Is there a supported way to determine which source path passed to
FileUtil.copyFile() is null? - Is there a patch or supported workaround for this issue?
Environment: ArcGIS Enterprise 11.5, ArcGIS Notebook Server 11.5, Linux, federated Notebook Server.