[master] 9b3a999 Elaborating on troubleshooting.

Per Andreas Buer perbu at varnish-cache.org
Tue Mar 8 14:23:02 CET 2011


commit 9b3a999b8cd6e40bc322e3dac087f0e7a6bef67b
Author: Per Buer <perbu at varnish-software.com>
Date:   Tue Mar 8 13:48:20 2011 +0100

    Elaborating on troubleshooting.
    
    How to deal with Varnish crashing (syslog, etc) and how to find
    503 errors in Varnishlog.

diff --git a/doc/sphinx/tutorial/troubleshooting.rst b/doc/sphinx/tutorial/troubleshooting.rst
index 5965ac0..aeb2786 100644
--- a/doc/sphinx/tutorial/troubleshooting.rst
+++ b/doc/sphinx/tutorial/troubleshooting.rst
@@ -10,9 +10,9 @@ leave clues of whats going on.
 When Varnish won't start
 ~~~~~~~~~~~~~~~~~~~~~~~~
 
-Sometimes Varnish wont start. There is a pletphora of reasons why
+Sometimes Varnish wont start. There is a plethora of reasons why
 Varnish wont start on your machine. We've seen everything from wrong
-permissions on /dev/null to other processses blocking the ports.
+permissions on /dev/null to other processes blocking the ports.
 
 Starting Varnish in debug mode to see what is going on.
 
@@ -53,14 +53,44 @@ on IRC.
 Varnish is crashing
 ~~~~~~~~~~~~~~~~~~~
 
-When varnish goes bust.
+When varnish goes bust the child processes crashes. Usually the mother
+process will manage this by restarting the child process again. Any
+errors will be logged in syslog. It might look like this:::
 
+       Mar  8 13:23:38 smoke varnishd[15670]: Child (15671) not responding to CLI, killing it.
+       Mar  8 13:23:43 smoke varnishd[15670]: last message repeated 2 times
+       Mar  8 13:23:43 smoke varnishd[15670]: Child (15671) died signal=3
+       Mar  8 13:23:43 smoke varnishd[15670]: Child cleanup complete
+       Mar  8 13:23:43 smoke varnishd[15670]: child (15697) Started
+
+Specifically if you see the "Error in munmap" error on Linux you might
+want to increase the amount of maps available. Linux is limited to a
+maximum of 64k maps. Setting vm.max_max_count i sysctl.conf will
+enable you to increase this limit. You can inspect the number of maps
+your program is consuming by counting the lines in /proc/$PID/maps
+
+This is a rather odd thing to document here - but hopefully Google
+will serve you this page if you ever encounter this error. 
 
 Varnish gives me Guru meditation
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 First find the relevant log entries in varnishlog. That will probably
-give you a clue.
+give you a clue. Since varnishlog logs so much data it might be hard
+to track the entries down. You can set varnishlog to log all your 503
+errors by issuing the following command:::
+
+   $ varnishlog -c -o TxStatus 503
+
+If the error happened just a short time ago the transaction might still
+be in the shared memory log segment. To get varnishlog to process the
+whole shared memory log just add the -d option:::
+
+   $ varnishlog -d -c -o TxStatus 503
+
+Please see the varnishlog man page for elaborations on further
+filtering capabilities and explanation of the various options.
+
 
 Varnish doesn't cache
 ~~~~~~~~~~~~~~~~~~~~~



More information about the varnish-commit mailing list