My parent company has "thoughtfully" referenced our public website in a frame on the home page of a mandatory-use intranet application, thereby guaranteeing we get a lot of referring traffic from the intranet's address. How do I suppress these visits in reports or even better, prevent them from being logged?
ReferingSite are kept into MongoDB on Interactions collection.
Please see below picture
The most suitable way to remove old referring site data from Analytics reports includes two steps:
1) Remove the unwanted references (ReferringSite) from "Interactions" collection of Mongo DB. It can be done by performing the following query:
This query should remove "ReferringSite" and fields of documents where specified ReferringSite exists.
2) Performing the Rebuilding of reporting database: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/server_considerations/walkthrough_rebuilding_the_reporting_database
NB: I didn't test this queries on my environment. I recommend you to make a backup of the mongo db and reporting before running it.
I can think of two ways for you to do this.
1.) Overwrite the Sitecore.Analytics.Pipelines.CreateVisits pipeline in the Sitecore.Analytics DLL. There are a couple of changes you can do to prevent it, but to start there is a method called ParseReferrer that sets the value.
2.) You can use the Data Exchange Framework to create a process that removes the entry using MongoDB C# code. It will give you more flexibility if you have any other code cleanup things as well.