Perfmon reference articles

I'm working on some perfmon issues related to sql server.  Here are a few links with articles covering which perfmon counters and values should be used.  If you are in a position where you have to troubleshoot these types of things, this is a must read.  A fellow co-worker passed along the first two, which are really good.

Misc IIS links with great info

I was looking for some IIS related information and ran across some 'great' links.   I wanted to post them for future reference. 

Sample scripts for managing Web sites on Internet Information Server 6.0.
http://www.microsoft.com/technet/scriptcenter/scripts/iis/iis6/default.mspx?mfr=true

Sample scripts for managing the SMTP mail server included with Internet Information Server 6.0.
http://www.microsoft.com/technet/scriptcenter/scripts/iis/iis6/default.mspx?mfr=true

IIS7 SDK information
http://msdn2.microsoft.com/en-us/library/aa830049.aspx

 

Want help with IIS SMTP Service? Please enable logging.

When you trying to troubleshoot SMTP delivery issues and using Microsoft IIS SMTP Service.  One tip, the logging is not enabled by default.  I'm not sure why, but it can provide a ton of great information.  Pictures are worth a thousands words.  It can be done in three easy steps using IIS manager.  So the next time you have mail delivery issues, enable logging, send some test emails and see what is logged.  Notepad is a required tool for viewing them.   You can even use Logparser to query the files.  FINDSTR is my favorite quickie tool to locate information.   Impress yourself and your admin with this information the next time you have mail delivery issues.

Note: This is not enabled by default.

Step 1 – Enable logging

Step 2 – this shows where the logs are located

Step 3 – Enable all fields so the maximum amount of information is logged

IIS SMTP links

Here are some SMTP links I found that could be helpful.

SMTP Queue Backup Occurs Due to Delivery Threads Attempting to Connect to Unavailable Hosts
http://support.microsoft.com/kb/264891

Great resource for mail related things
http://www.msexchange.org

Google is your friend
http://www.google.com/search?hl=en&q=site%3Asupport.microsoft.com+iis+smtp

DNSStuff.com – This is the Google of DNS troubleshooting sites.  The best hands down!
http://dnsstuff.com

 

Speaking at Grand Rapids, MI .NET user group – Tuesday, March 20th

I'll be speaking at Grand Rapids MI .NET user group on Tuesday, March 20th.  http://grdotnet.org/MeetingInfo/default.aspx  

Topic: Web Development on Web Farms
When: March 20 (6pm) at Watermark Country Club

Link to our homepage regarding web farm hosting

http://www.orcsweb.com/hosting/webfarmplan.aspx

Here is a link to my presentation

http://www.orcsweb.com/articles/grdotnet0307.zip

 

Localhost connection issues list

I’ve been hanging in the forums and newsgroups.  There have been a variety of posts stating, I can’t browse Localhost or http://127.0.0.1   There has not been any pattern to resolve it.  This post is dedicated to this very common issue.  If you have a solution not listed, please provide a comment and we’ll add it to the list.  Hope this helps if you are having this problem.


1) Make sure the WWW service is enabled – Go to the Control Panel >> Administrative Tools >> Services applet.  Launch this and see if the World Wide Publishing Service is started.


2) Verify you can ping localhost and resolve to 127.0.0.1


3) Try adding localhost to trusted sites in IE.  Also turn off HTTP Friendly errors.  This is Internet tools > Advanced tab of Internet Tools?  When unchecked, it can display a more accurate error.  If you are posting a question in a forum or newsgroup, please post the error.


4) Do you get this behavior with Firefox and IE both?


5) Open a command prompt, type netstat -an -p tcp and see if 0.0.0.0:80 listed or something with :80 listed. This point goes along with #1.  If you see the WWW service not started.  There is another process or program using Port 80.  Port 80 is used by default for serving webpages.


6) If IIS is not started and you see port 80 listed in #5.  It could be another service, such as Skype as another poster mentioned taking up the TCP port 80


7) Verify you don’t have a virus software or spyware program blocking access.


8) Anything in the event logs showing an error.  Look in the Control panel >> Administrative Tools >> EventViewer.  See if there are any errors in the SYSTEM, SECURITY or APPLICATION log that relate to anything with the WWW service.  Or any errors that seem to relate to your issue.  if so, you can search Google or support.microsoft.com to see if they have any suggestions.   Also, if you find an error you can post it back here.


9) Run Filemon or Process Monitor from sysinternals.  This can help show which files or folders don’t have access. – Process monitor is a free utility provided by Microsoft to help identify if there are folder or file level access permissions.  Here is an article on using this utility.


http://www.microsoft.com/technet/sysinternals/utilities/processmonitor.mspx


10) Windows firewall could be blocking the port.  You can either turn it off temporarily or run ‘netsh firewall set portopening TCP 80 “HTTP Port’ from the command prompt.  Note: The netsh command requires elevated command prompt.



11) Jayson Knight metnioned he had to sometimes you need to add 127.0.0.1 localhost to your hosts file.


12) Steve Smith ran into another similar issue with a loopback ‘lockdown’:


http://aspadvice.com/blogs/ssmith/archive/2007/02/09/SQL-Reporting-Services-401-Error.aspx


13) Mike Volodarsky – A while ago, I had made a post to help troubleshoot these types of errors for IIS7 (localhost, and remote) – it may also be useful in troubleshooting these errors:


http://mvolo.com/blogs/serverside/archive/2006/10/16/Where-did-my-IIS7-server-go_3F00_-Troubleshooting-guide-for-_2200_server-not-found_2200_-errors.aspx.


14) Take a look at KB896861 (http://support.microsoft.com/kb/896861)


15) For 403 and related status code issues. http://support.microsoft.com/kb/318380  – Tom Kaminski, Microsoft IIS MVP


16) Setting up localhost so I can “Make your website public” by Kristofer Gafvert


17) Remove “::1” from your local hosts file.  for some reason, this was in my local hosts file recently. 


18) On an XP machine – IPv6 was instaleld and IPV6 became the default protocol for my NIC and Wireless adapter. After uninstalling IPV6 everything has worked fine. All of the problems that I was seeing were apparently related to IPV6s loopback response of ::1: when the processes were attempting to access //localhost. Though there were no entries in the host or lmhosts file IPV6 was still responding in that manner.


19) Port 80 was in-use.  McAfee’s ePO was using port 80 for Client to Server communications.  The original tech did not think that installing ePO would be a problem on our webserver.


20) I had intermittent problems with almost all connections to localhost / loopback interfaces under Windows 7. The issue affected not only connections to IIS 7.5 but also local proxy services, port forwarding by ssh etc. It turned out that the cause was that I had accidentally left the “Receive Window Auto-Tuning Level” setting at “experimental” after some network testing. Everything else worked normally on the computer — only loopback-related things seemed to be affected.


The current value of this setting can be displayed with the following command:
netsh interface tcp show global


To reset it to normal, issue the following command as administrator:
netsh int tcp set global autotuninglevel=normal


Otto G

Searching Live.com and Google.com tip

Maybe this is something everyone knows but me. 🙂  Thanks to Tom Kaminski IIS MVP and http://www.iistoolshed.com creator, he reminded me of a quick search tip.  Wow!  I wanted to pass this along.  Note, this is not intended to compare http://Google.com to http://Live.com.   The results were similar.

site:support.microsoft.com iis ssl

site:support.microsoft.com iis debug

site:support.microsoft.com iis host-header

site:support.microsoft.com iis ssl

site:support.microsoft.com iis httpcfg

List files using Tasklist from the command prompt

I've been hanging out in the forums over at http://forums.iis.net.  A person was having an issue where a 3rd party product potentially was causing an issue.  You can use Process Explorer from Sysinternals.  If you know which service the DLL is potentially loaded, you can use tasklist /M /FI "Services eq inetinfo".   This shows what files are associated with that process.  I thought I'd pass this along. 

Image Name                     PID Modules
========================= ======== ============================================
inetinfo.exe                   676 ntdll.dll, kernel32.dll, ADVAPI32.dll,
                                   RPCRT4.dll, msvcrt.dll, IISUTIL.dll,
                                   USER32.dll, GDI32.dll, ole32.dll,
                                   CRYPT32.dll, MSASN1.dll, USERENV.dll,
                                   Secur32.dll, WS2_32.dll, NSI.dll,
                                   IMM32.DLL, MSCTF.dll, LPK.DLL, USP10.dll,
                                   rpcref.dll, IisRTL.DLL, iisadmin.dll,
                                   COADMIN.dll, OLEAUT32.dll, PSAPI.DLL,
                                   AUTHZ.dll, ADMWPROX.dll, IISCFG.DLL,
                                   ATL.DLL, abocomp.dll, HTTPAPI.dll,
                                   WSOCK32.dll, nativerd.dll, XmlLite.dll,
                                   IISRES.DLL, NTMARTA.DLL, WLDAP32.dll,
                                   SAMLIB.dll, CLBCatQ.DLL, metadata.dll,
                                   MPR.dll, msxml3.dll, SHLWAPI.dll,
                                   comctl32.dll, rsaenh.dll, SHELL32.dll,
                                   mlang.dll, rsca.dll, svcext.dll, wamreg.dll

IIS7 post #32 – Web Application Stress Tool on Vista

I was messing around with Powershell and IIS7 trying to list the executing requests.  Since my local environment isn't very busy, I loaded Web Application Stress Tool.   This tool has no problem generating enough requests.  You'll need to load one DLL called msvcp50.DLL not include with Vista.   The installer looks for this DLL.

I created a Default.asp page that writes the Date / time and hit this with WAST.

<% response.write Now() %> 

Here is the Powershell script

[System.Reflection.Assembly]::LoadFrom( "C:\windows\system32\inetsrv\Microsoft.Web.Administration.dll" )
$sm = new-object Microsoft.Web.Administration.ServerManager
$sm.workerprocesses | foreach-object {$_.GetRequests(0)}

Here is the WAST Settings

Here is the output from the powershell script