Skip to content

Utility to generate "realistically looking" traffic for Sitecore sites with configurable patterns

Notifications You must be signed in to change notification settings

adminb-solutions/xGenerator

 
 

Repository files navigation

Experience Generator

Generate "realistically looking" traffic for the Sitecore Experience Database (xDB) with configurable patterns, including:

  • Trends over time
  • Identified contacts with multiple visits
  • Bounce rate
  • Geo location
  • Landing pages
  • Channels
  • Referrers
  • Internal and external search
  • Outcomes
  • Campaigns

Experience Profile Generator

Experience Profile Generator

Generate visits for Sitecore contacts (xProfile) with configurable settings:

  • Contact information
  • Visit pages
  • Recency
  • Outcomes
  • Geo location
  • Goals
  • Channel

#Solution structure:

ExperienceGenerator.Client – SPEAK v1 applications to manipulate with configuration of created data. Includes Experience generator and Experience Profile generator tools

ExperienceGenerator – core of SPEAK applications. Consists of:

  • configuration parsers (for Experience generator and Experience Profile generator tools)
  • Databases of request data (location, device distribution, user agents, search engines etc.)
  • Request parameters randomized factories.

Colossus – contains of math randomizer tools, basic web request generator and parser tools. Contains tools that allow serialize\deserialize all XGenerator data to custom web request header.

Colossus.Integration – provide integrations with Sitecore. Adds custom handlers to Sitecore pipelines to be able patch current request based on received data from Colossus request headers. Contains walkers to visit sitecore pages with required behavior strategy:

General processing flow for XGenerator:

  1. User opens XGenerator tools, performs job configuration.
  2. User clicks “Start” button
  3. ExperienceGenerator.Client pass received configuration to ExperienceGenerator parser
  4. ExperienceGenerator parser creates set of segments with request variables based on configuration and pass them to XGenerator JobManager
  5. JobManager starts invoking requests based on behavior configuration: XProfile behavior simulator or XAnalytics behavior simulator.
  6. Sitecore receives requests as is, setups analytics tracker by calling own pipelines
  7. Colossus.Intergration processors executed inside Sitecore pipelines to patch analytics tracker with current customizations of request

Installation Instructions

Deployment to Sitecore:

  1. Open "src\ExperienceGenerator.Client\App_Config\Include\ExperienceGenerator\zExperienceGenerator.DevSettings.config" and change "experienceGeneratorSource" variable to xGenerator source location
  2. Open "src\publishsettings.targets" and change publishUrl to the Sitecore host name
  3. Open ExperienceGenerator.sln in Visual Studio
  4. Perform Web publish for all web projects in solution using "local" profile
  5. Go to the %instanceName%/unicorn.aspx page and synchronize "ExperienceGenerator" configuration

Package Building Instructions

  • Building the installation package requires Sitecore Rocks.
  • The package definition is in ExperienceGenerator.Client\ExperienceGenerator.package. You need to point it to a Sitecore install with Experience Generator installed to build the package.

Extension points:

  • Variable Factories in XGenParser class that fill each request with variables based on configuration (device, date, duration, channel, campaign etc.) allow us setup new factory to fill new request variable
  • Processors in Colossus.Integration library patches all requests with provided request variables.
  • XGenParser – class that converts configuration to set of requests. Executes all request variable factories.

THIS MODULE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT SUPPORT, WARRANTIES OR CONDITIONS OF ANY KIND.

About

Utility to generate "realistically looking" traffic for Sitecore sites with configurable patterns

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 78.9%
  • JavaScript 19.4%
  • Other 1.7%