Load testing and monitoring
Notes
Azure monitor is easily integrated into .NET applications on VMs. Since ArcGIS Enterprise is not a .NET application (is web adaptor?)
Load testing
Web based load testing via Visual Studio has been deprecated. While VS2019 still supports this process, I’m choosing to not begin a new task on a deprecated technology.
There are many load testing options, but https://k6.io was selected for a first run. This is because:
k6 installs via apt, making for easy integration into a DevOps pipeline
k6 defines it’s tests in JavaScript, making these tests available through our version control
A sample pipeline was created here: https://dev.azure.com/TCOPP/EGIS/_build?definitionId=54&_a=summary
There were implementation challenges. The output of K6 was a JSON log of the test results, which isn’t accepted as a test result in a DevOps pipeline. A bash script was written to summarize the log and create a JUnit formatted XML, which DevOps can read.
Also, I’m using a sample URL at the moment. Firewall rules need to be sorted out to allow a pipeline script to call our eGIS urls.