Forum Discussion

Gurdip_Sira_172's avatar
Gurdip_Sira_172
Icon for Nimbostratus rankNimbostratus
Jan 10, 2017

SharePoint Health Check issue

Hi, I am using the SharePoint 2016 iApp.

 

Part of it I am using the custom health monitor that works with the SharePoint Health score. The GET string looks as follows:

 

GET Default.aspx HTTP/1.1\r\nHost: sharepointsites.abc.com\r\n

 

However, this health monitor does not go green and sites are in accessible.

 

I'm using HNSCs and there is an account for the health check specified which has full read on the web application.

 

Also, I specified that the application health monit works with NTLM authentication (thus the account being used) but read in the iApp deployment guide this is not supported?

 

Thanks

 

7 Replies

  • The check probably needs to include the leading slash in the URL (i.e. GET /Default.aspx). See if that resolves the issue.

     

  • Try adding another \r\n to the end of the monitor's SEND string. What is the RECEIVE string set to, and what is the SharePoint server returning?

     

  • First, add a / in front of the uri according to Davids suggestion, then add the extra \r\n according to crodriguez:

    Result:

    GET /Default.aspx HTTP/1.1\r\nHost: sharepointsites.abc.com\r\n\r\n
    

    I don't think it matters, but you might also want to add a user-agent if you want to make the request more "real":

    GET /Default.aspx HTTP/1.1\r\nHost: sharepointsites.abc.com\r\nUser-agent: Mozilla/5.0 (LB;Windows NT 6.1;)\r\n\r\n
    

    Then, you can troubleshoot by going to the pool, clicking on a member, then clicking on the monitor and then enable "Monitor Logging".

    Check the logs in

    /var/log/monitors/
    and you should have more to go on.

    I would also check the IIS logs to see if the request has been accepted by filtering for the load balancers self IP on the c-ip column.

    Another thing you can do is to run a tcpdump and check the results in Wireshark:

    tcpdump -vvv -s0 -nni any host  and host  and port  -w /var/tmp/sharepoint.pcap
    

    Wait a few seconds to get a few packets (you can see the counter in the shell prompt) and then download and open the file in wireshark.

    Good luck!

    /Patrik

  • This is what I now have:

     

    GET /SitePages/Home.aspx HTTP/1.1\r\nHost: sharepoint.example.com\r\nFront-End-Https: On\r\n

     

    The RECEIVE string is:

     

    X-SharePointHealthScore: [0-5].

     

    The SharePoint helath score is returned in each request.

     

  • Ok so I have this fixed. The health monitor is:

     

    HEAD /Pages/default.aspx HTTP/1.1\r\nHost: \r\nConnection: Close\r\n\r\n

     

    And returning:

     

    X-SharePointHealthScore: [0-5]

     

    However, on one of my servers, the health monitor passes, on another identical server (also using Https on IIS), the health check fails with:

     

    Offline (Enabled) /isg_global_applications/SP2016_HealthMonitor: Read failed; No successful responses received before deadline. @2017/01/12 21:52:54.

     

    Not sure why?