
Waarom deze tool is gemaakt
Het begrijpen van de prestaties van ArcGIS Data Reviewer-gebaseerde attribuutregels in ArcGIS Server kan een uitdaging zijn, vooral bij het evalueren van grote hoeveelheden data. Deze tool is ontwikkeld als reactie op een reeks gebruikersproblemen waarbij gebruikers probeerden te begrijpen waar de tijd daadwerkelijk wordt besteed tijdens de evaluatie van validatie attribuutregels. Door gebruikers te helpen de tijd voor de uitvoering van Data Reviewer attribuutregels te analyseren en op te splitsen, biedt de tool meer inzicht in de prestaties van validatieregels, waardoor het gemakkelijker wordt om knelpunten te identificeren, problemen op te lossen en bedrijfsworkflows te optimaliseren.
Hoe de tool te gebruiken
Voltooi de volgende stappen om de log parser tool uit te voeren:
- Stel het logniveau van uw ArcGIS Server in op Debug. Volg deze instructies om de serverloginstellingen in ArcGIS Server Manager op te geven.
- Evalueer uw attribuutregels
- Zolang er Data Reviewer-gebaseerde validatie attribuutregels zijn opgesteld op uw data, zouden er logberichten moeten zijn die deze tool kan parseren.
- Zoek de map op de ArcGIS Server-machine waar de serverlogs voor de service worden opgeslagen. Er zijn twee locaties waar de logs worden opgeslagen, afhankelijk van of u uw validatie attribuutregels synchroon of asynchroon hebt geëvalueerd.
- Serverlogs voor synchrone evaluaties bevinden zich in logs > machinenaam > services > servicenaam.MapServer
- Windows: C:\arcgisserver\logs\<machinenaam>\services\<servicenaam>.MapServer
- Linux: <ArcGIS Server installatie directory>/logs/<machinenaam>/services/<servicenaam>.MapServer
- Serverlogs voor asynchrone evaluaties bevinden zich in logs > machinenaam > services > System > ValidationTools.GPServer
- Windows: C:\arcgisserver\logs\<machinenaam>\services\System\ValidationTools.GPServer
- Linux: <ArcGIS Server installatie directory>/logs/<machinenaam>/services/System/ValidationTools.GPServer
- Voer de tool uit in ArcGIS Pro of vanaf de terminal.
- Om de tool uit te voeren in ArcGIS Pro
- Sla het bestand ReviewerLogParser.pyt op een bekende locatie op
- Kopieer alle serverlogs naar de machine met ArcGIS Pro
- Open ArcGIS Pro en voeg de toolbox toe aan een project
- Open de Reviewer Log Parser tool
- Kies bij het Log Folder parameter de map met serverlogs en klik OK
- Geef aan waar het geparseerde Excel-uitvoerbestand moet worden geplaatst
- Voer de tool uit

- Om de tool uit te voeren via de terminal met de python interactieve shell op de servermachine met de logs:
- Sla het bestand ReviewerLogParser.pyt op een bekende locatie op de servermachine op
- Bepaal de locatie van de serverlog
- Start de interactieve python shell gekoppeld aan ArcGIS Enterprise
- Voor Windows is dit meestal "C:\Program Files\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\python"
- Voor Linux is dit meestal <ArcGIS Server installatielocatie>/arcgis/server/tools/python
- Importeer arcpy
- Importeer de toolbox
- arcpy.ImportToolbox(pad/naar/ReviewerLogParser.pyt)
- Voer de tool uit
- arcpy.ReviewerLogParser_datareviewer(log_folder="/pad/naar/log/map",output_excel="/output/excel/geparseerde_output.xlsx")
- Kopieer het uitvoerbestand .xlsx en .csv naar een machine waarop Microsoft Excel (of een Excel-viewer) is geïnstalleerd en bekijk de resultaten.


Hoe de tool werkt
Op hoofdlijnen bestaat elke evaluatie uit drie fasen: lezen, validatie en schrijven. Lezen omvat de tijd die wordt besteed aan het synchroniseren van geodatabase-objecten naar tijdelijke SQLite-tabellen ter voorbereiding op verwerking. Validatie omvat het uitvoeren van Data Reviewer attribuutregels. Schrijven vertegenwoordigt taken die nodig zijn om de geodatabase bij te werken met resultaten, zoals het registreren van nieuwe fouten, bijwerken van opgeloste fouten, bijwerken van bestaande fouten en bijwerken van het validatiestatusveld.

Wanneer Data Reviewer-gebaseerde validatie attribuutregels worden geëvalueerd, gebruikt ArcGIS Server verschillende optimalisaties om regels efficiënter te verwerken. Een van deze optimalisaties is het creëren van een tijdelijke SQLite-database die alleen die objecten en velden bevat die nodig zijn voor de evaluatie, waardoor meerdere Data Reviewer attribuutregels in dezelfde evaluatie dezelfde gecachte data kunnen gebruiken. Vergelijkbare evaluaties kunnen ook worden gecombineerd om de algehele verwerkingssnelheid te verbeteren.
De Reviewer Log Parser helpt bepalen waar tijd wordt besteed tijdens het evaluatieproces. Het leest ArcGIS Server logbestanden uit een geselecteerde map en zoekt naar Data Reviewer validatieberichten geschreven door de ReviewerUtilities-methode. De tool groepeert gerelateerde berichten per request-ID, waardoor elke validatie afzonderlijk kan worden geanalyseerd. Voor elk logbericht legt de tool het berichttekst, tijdstempel, verstreken tijd, bronlogbestand en regelnummers vast. Het berekent ook een Unix-tijdstempel om chronologische sortering en verdere analyse mogelijk te maken.
Om algemene bewustwording en diepgaandere probleemoplossing te ondersteunen, produceert de tool twee uitvoerbestanden. De eerste is een CSV-bestand dat details bevat van elk logbericht zoals hierboven beschreven. De tweede is een Excel-werkboek dat elke validatieronde samenvat in een beter leesbaar formaat. Het werkboek opent met een README-werkblad dat uitleg geeft over aannames in het rapport, gevolgd door één werkblad per request-ID (genoemd naar de eerste 31 tekens van de request-ID). Elk run-werkblad vermeldt de geparseerde bewerkingen, beschrijft wat elke bewerking betekent, splitst verstreken tijd op in Lezen, Validatie en Schrijven in seconden, en bevat fase-totalen geformatteerd als uren, minuten en seconden.
Opmerking: Bij het bouwen van run-werkbladen probeert de parser dubbele telling van synchronisatietijd te vermijden. Als er tijdens een validatiebewerking een synchronisatiebewerking plaatsvindt, trekt de tool die synchronisatietijd af van het validatietotaal en rapporteert deze apart als Leestijd.
Als u meer details nodig heeft, kunt u met behulp van het CSV-uitvoerbestand een samengevatte bewerking terugvinden naar het originele logbericht. Begin met het werkbladnaam gebaseerd op de eerste 31 tekens van de request-ID. Open vervolgens het CSV-bestand, zoek naar dezelfde request-ID en vergelijk dan de bewerkingstekst uit het werkboek met het berichtveld in het CSV-bestand. Omdat het CSV-bestand ook het pad naar het bronlogbestand en regelnummers bevat, kunt u hiermee het originele bericht in het ArcGIS Server logbestand terugvinden.
Bekende beperkingen en verwachtingen bij gebruik van deze tool
Bij deze tool horen enkele belangrijke aandachtspunten. Deze zijn als volgt:
- De tool parseert alleen die berichten (ReviewerUtilities) die worden aangemaakt wanneer Reviewer-gebaseerde validatie attribuutregels worden geëvalueerd. Er zijn aanvullende berichten (zowel Reviewer als niet-Reviewer) gerelateerd aan het validatieproces die gegenereerd die niet door deze tool worden vastgelegd.<\/LI>
- De tool analyseert geen op Arcade gebaseerde validatie-attribuutregels.
- Zie Problemen oplossen met attribuutregelgedrag met ArcGIS Diagnostic Monitor en ArcGIS Enterprise Server logbestanden<\/A> om meer te leren over het oplossen van problemen met op Arcade gebaseerde attribuutregels.<\/LI><\/OL><\/LI>De huidige versie van deze tool legt geen foutmeldingen vast zoals time-outs of logs gerelateerd aan ontbrekende gegevensbronnen.
- Om deze terug te traceren moet u mogelijk beginnen met het Excel-bestand, kijken waar er geen vermeldingen zijn of vermeldingen op nul staan, dit terug te traceren naar de csv (die de log en regel bevat) en vervolgens de ruwe log rond dat bericht te onderzoeken om precies te zien wat er aan de hand is.<\/LI><\/OL><\/LI>
- Bij het onderzoeken van de validatietijd worden specifieke Data Reviewer controletypes slechts één keer vermeld, zelfs als er meerdere instanties van die controle worden geëvalueerd.<\/LI>
- Bij het onderzoeken van de validatietijd wordt verwacht dat sommige controles langer duren dan andere vanwege hun verschillende complexiteit of het aantal objecten waarop ze worden uitgevoerd. Bijvoorbeeld, regels gebaseerd op de
Valency<\/A>-controle zijn tijdintensiever in vergelijking met andere controles vanwege de complexiteit van de ruimtelijke relaties die worden geëvalueerd.<\/LI>Bij het evalueren van attribuutregels is de totale evaluatietijd van een regel slechts zo snel als de langzaamste regel. Dit is vooral belangrijk bij het gebruik van een mix van Arcade en Data Reviewer attribuutregels<\/LI><\/OL>Feedback welkom<\/H3>Dit is de eerste versie van de tool en we verwelkomen uw feedback. Of u het nu gebruikt om prestatieproblemen op te lossen of gewoon beter inzicht wilt krijgen in validatiegedrag, we horen graag uw ervaring. Feedback, ideeën voor verbeteringen en bugrapporten zullen toekomstige verbeteringen sturen en helpen om de tools nog waardevoller te maken.<\/P>