I'd like the post to develop over time, so if you find any inaccuracies, would like to contribute more information, or have useful links, then please leave a comment. Better still, contact me on Twitter.
All information has been written with reference to Sitecore 8 (rev 141212)
The CreateTracker pipeline is quite simple. It's called from the CreateTracker processor in the StartAnalytics pipeline, and contains only one processor by default. It would seem that the pipeline is intended to be extended in such a way that each processor should abort the pipeline if it successfully adds an ITracker object to args.Tracker, and only continue if args.Tracker remains null.
The GetTracker processor simply instantiates a new DefaultTracker object, and assigns it to the Tracker property of the pipeline's CreateTrackerArgs object. Within DefaultTracker's constructor, the following actions are performed:
- The Sampling property is assingned a newly instantied TrackerSampling object.
- The EnsureSessionContext pipeline is run.