Prevent Google analytics from gathering data in development environment, ASP.NET MVC

后端 未结 4 1326
情书的邮戳
情书的邮戳 2021-02-09 07:34

I have an ASP.NET MVC (3) app and I\'ve set Google analytics up. The problem is that every time I run from Visual Studio the Google script starts gathering data, which of course

相关标签:
4条回答
  • 2021-02-09 08:18

    You could also have different api key for dev environment in the web.config. That way it won't pollute the production data. I believe the key can also be left empty and then nothing is logged by Google Analytics.

    0 讨论(0)
  • 2021-02-09 08:29

    The best-practice advised by Google is to use a filter to remove the data from your GA profiles. This can either be done by filtering based on the IP address of development machines or by setting a custom variable cookie in each browser being used for development and testing. This approach would mean you could remove the data without needing to modify your main body of code.

    0 讨论(0)
  • 2021-02-09 08:31

    You could also use HttpContext to only include the GA script if running in debug mode:

    @if (!HttpContext.Current.IsDebuggingEnabled)
    {
       <script type="text/javascript">
          var _gaq = _gaq || [];
          ...
       </script>
    }
    
    0 讨论(0)
  • 2021-02-09 08:37

    I would write a custom HTML helper which would include the necessary scripts for Google Analytics:

    @Html.Analytics()
    

    This helper could then use compilation directives and #if DEBUG is set it would simply emit an empty string. And by the way there is already such helper available in the microsoft web helpers package and see how it is implemented:

    @Analytics.GetGoogleHtml({your-analytics-webPropertyId-here})
    
    0 讨论(0)
提交回复
热议问题