Surendra Sharma

Surendra Sharma

Search This Blog

Showing posts with label Sitecore lessons. Show all posts
Showing posts with label Sitecore lessons. Show all posts

Friday, March 24, 2017

Sitecore Habitat : what to do if 05-Sync-Unicorn is not working



I have just started to play with Sitecore Habitat project. The first problem that I encounter is Habitat setup.
 

Everything worked fine except task “05-Sync-Unicorn”. I waited for an hour to complete it but it seems to showing in progress status as 

Sync Unicorn
Sync Unicorn

I googled for the solution but didn’t find any suitable link which explained it properly. So I decided to write the article

Follow below steps if "05-Sync-Unicorn" is not working for you


  • Login to Sitecore desktop

  • Open http://yourinstance/unicorn.aspx
 
Unicorn Sync Page
Unicorn Sync Page



  • You can sync Sitecore items by clicking "Sync" button for each component one by one

  1. Syncing process updates items in Master, core, link database and in search indexes.
  2. It also sync roles, users
  3. Finally it published all synced items to web
Sync Progress
Sync Progress

  • Run "06-Deploy-Transforms" from Visual Studio

Deploy Transforms
Deploy Transforms
 
  •  Open your instance on browser and hurreyyy you will get your Habitat site

Habitat Home Page
Habitat Home Page
 

I hope you like this Sitecore trick. Stay tuned for more Sitecore related articles.

Till that happy Sitecoring :)

Please leave your comments or share this trick if it’s useful for you.

Thursday, March 23, 2017

How to expire Sitecore session forcefully



In one of our project, I have to forcefully expire the Sitecore session so that it flush the data to MongoDB.

For this either you can restart IIS or start-stop your website. But this action require you to login into the system. But what if you are accessing Sitecore remotely or over the internet.

So I write this script which expire the session and clear the Sitecore analytics related cookies.

<%@ Page Language="C#" AutoEventWireup="true" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <%
            Context.Session.Abandon();
            HttpContext.Current.Request.Cookies.Remove("ASP.NET_SessionId");
            Response.Cookies.Add(new HttpCookie("ASP.NET_SessionId", string.Empty));
            HttpContext.Current.Request.Cookies.Remove("SC_ANALYTICS_SESSION_COOKIE");
            Response.Cookies.Add(new HttpCookie("SC_ANALYTICS_SESSION_COOKIE", string.Empty));
            HttpContext.Current.Request.Cookies.Remove("SC_ANALYTICS_GLOBAL_COOKIE");
            Response.Cookies.Add(new HttpCookie("SC_ANALYTICS_GLOBAL_COOKIE", string.Empty));
        %>
    </form>
</body>
</html>

I called this script as "ForceSessionEnd.aspx" and keep it in "Website" folder.

Access this script over the browser as "http://yourinstancename/forcesessionend.aspx".

After running this page, you will get latest data on mongo database.

Feel free to add more cookies as per your need.

I hope you like this Sitecore script. Stay tuned for more Sitecore related articles.

Till that happy Sitecoring :)
 
Please leave your comments or share this script if it’s useful for you.

Wednesday, March 22, 2017

Failed to perform MaxMind lookup

In our CD server we are recelving lots of log errors related with MaxMind lookups as
 
ManagedPoolThread #17 00:37:24 ERROR Failed to perform MaxMind lookup
ManagedPoolThread #17 00:37:24 ERROR Failed to perform GeoIp lookup for 192.168.0.74
Exception: Sitecore.Analytics.Lookups.CannotParseResponseException
Message: Unexpected format. Cannot parse the MaxMind response for IP address: 192.168.0.74
Source: Sitecore.Analytics
   at Sitecore.Analytics.Lookups.MaxMindProvider.GetInformationByIp(String ip)
   at Sitecore.Analytics.Lookups.GeoIpManager.GetDataFromLookupProvider(GeoIpHandle geoIpHandle)

We want to stop this MaxMind lookup functionality as we are not using this in our project.

Solution:

We can disable MaxMind lookup operation by editing “Sitecore.Analytics.config” file and by making “false” entry to “Analytics.PerformLookup” key as

<!--  ANALYTICS PERFORM LOOKUP
      Determines if this server performs the lookups (DNS and URLs). Only one server should be responsible for performning the lookup.
      Default: true
-->
<setting name="Analytics.PerformLookup" value="false" />

After this change we didn’t find any MaxMind related errors in Sitecore log file.

I hope you like this Sitecore tip. Stay tuned for more Sitecore related articles.

Till that happy Sitecoring :)
 
Please leave your comments or share this tip if it’s useful for you.