Splunk Web Optimization is an external front-end performance platform that enables web developers and content managers to identify bugs, prioritize fixes, and optimize content that negatively impacts performance. Optimization enables tech teams to test throughout the development lifecycle and measure the impact of changes on site performance and functionality.
In this article, we’ll cover some things to consider as we get started, and we’ll walk through the basics of creating tests and analyzing results in the Optimization app.
Logging into Splunk Web Optimization
Splunk Web Optimization is a web application, so there is no installation necessary. A member of the team at Splunk Synthetics can provision an account for your company’s use, or someone on your team may invite you to join an existing Splunk Synthetics account.
When an account has been created for you, Splunk Synthetics will send you an email with instructions to set a password. Once a password has been set you will be able to log into the Splunk Web Optimization app at https://optimization.rigor.com.
If you have not yet received an email invitation from Splunk Synthetics to set a password, please ask the Splunk Synthetics Admin for your organization to create a new user for you.
Users with GroupAdmin permissions can create users by navigating to Profile > Settings > Account Settings or by following this link.
GroupAdmin users can also view their account license and limits from the Account Settings page.
When you log into the Splunk Synthetics app you should see your settings in the top right corner of the user interface:
From the settings page, users can edit their profile, enable integrations, access API credentials, and more.
Creating a Test
Basic Performance Test
Once logged into Splunk Web Optimization, users can create a new test by clicking New Test.
In order to create a basic Single Page performance test, specify three values:
- URL of page to test
- Device type
- Test name (optional)
Click Start Test to begin the performance analysis.
Basic scans usually take between 1-5 minutes to complete depending on the size and complexity of the page.
Advanced Performance Tests
- Bulk Pages
- Website Crawl
- HAR File
Splunk Web Optimization makes it possible to run tests in local developer environments or sites behind a firewall. Learn more in this blog post.
Advanced test types are not included in all packages. If one of these options isn't available in your account, contact your Splunk Synthetics account manager for more information.
Defining and Enforcing Performance Best Practices
Splunk Web Optimization scans your site for approximately 300 performance defects. Before diving into the results, it's best to define a small list of internal performance best practices that can be referenced when implementing Optimization.
Read this post from the Rigor blog to learn more.
Defect Check Policies govern which performance defects the Optimization engine looks for when you run a test. By default, each test uses the All Defects Policy. This policy includes the most common performance checks used by our top customers. Follow the instructions on Step 2 of this blog post to create your own Defect Check Policy.
Analyzing Test Results
Segmenting First and Third Party Content
When analyzing the performance of your site, there are two classifications of hosts that can serve content:
- First party: content that you create, develop, or have direct control to manage (i.e. images, video, CSS)
- Third party: content linked from your webpage over which you do not have direct control (i.e. ads, social plugins, analytics tags)
Splunk Web Optimization makes it simple to classify first and third party hosts so that you can ignore content you don't control. We recommend either defining first party hosts for each snapshot, or globally allowing first party hosts and blocking known third parties. Learn more in this blog post.
Similar to defining a global Defect Check Policy, Splunk Synthetics users can personalize all results within an Optimization snapshot. This includes:
- Muting defects that aren't relevant to your organization or team
- Defining severity to prioritize most important defects first
- Specifying a threshold for which a defect is flagged to help enforce internal best practices
These customizations don’t change the scope of how Splunk Web Optimization tests for performance issues. They simply act as filters that determine whether we show you a problem or how a problem impacts your overall results.
Learn more on our in this article.
Understanding the Results
The Optimization engine runs a performance analysis checking for over 300 different performance defects. The Optimization Knowledge Base defines each of these checks and includes an overview, technical details, instructions on how to resolve, and external references to learn more.
Each customer has access to our comprehensive REST API for Splunk Web Optimization. The API allows you to extend the functionality of Optimization to:
- Create, Read, Update, and Delete Performance Tests
- Create, view, and delete existing Snapshots
- View performance defect details inside a Snapshot
- View site content details inside a Snapshot
API documentation can be accessed at optimization-api.rigor.com. This includes instructions for accessing the API, retrieving your API key, and using the interactive API Explorer.
See how Splunk Synthetics is using the Optimization API to integrate performance testing with continuous deployment.
Many of our clients use Optimization in sync with their development, QA, and operations workflows. We've built integrations that enable our customers to integrate performance testing with their internal processes to enhance automated testing and increase efficiency.
Performance defects are bugs. When new issues are introduced to your site, it's important to log these bugs in a way that's seamless with your current issue resolution workflow. If you use JIRA to track bugs and defects on your web application, you can now log these bugs directly from Splunk Web Optimization.
To get started, log into your Optimization account and then select Settings > Tools from the top right corner.
Click Enable under the JIRA section and you'll find instructions and more information about the integration. For more detailed instructions, see our this article.
Treating performance defects as bugs and automating performance optimization as part of your workflow makes it much easier to manage performance issues over time.
If you use Jenkins for your continuous integration builds, the Optimization plugin makes it easy to automate performance testing as a discrete step in your build process while allowing you to specify success criteria for a passed or failed build.
For full details about how to install and configure the Splunk Web Optimization plugin for Jenkins, check out this post in this article.
Want to skip the documentation? Install the plugin directly from the Jenkins site.