diff --git a/check_php-fpm-status b/check_php-fpm-status
index 1c00394f86331c6da33a3e9c00fecaf37d84a6c9..218f79969a3e5f35f002cdf89e97982f14ca4bc0 100755
--- a/check_php-fpm-status
+++ b/check_php-fpm-status
@@ -42,29 +42,71 @@ function _getvalue(){
         grep "^$1:" $tmpfile | cut -d ":" -f 2 | awk '{ print $1 }'
 }
 
+function showHelp(){
+cat <<EOF
+______________________________________________________________________
+
+CHECK_PHP-FPM-Status
+Get counters from PHP-FPM status output for active/ idle processes.
+
+(c) Institute for Medical Education - Univerity of Bern
+Licence: GNU GPL 3
+______________________________________________________________________
+
+The check fetches several counters from php-fm-status page.
+
+It shows a short status in a single line and then the dump of the 
+status page.
+For performance data it eachos:
+
+    php-fpm-active     count of active workers
+    php-fpm-maxactive  max active processes
+    php-fpm-idle       count of idle workers
+    php-fpm-queue      count of items in the queue
+    php-fpm-maxqueue   max listen queue
+    php-fpm-slow       slow requests
+    php-fpm-speed      requests per second (since last execution)
+
+SYNTAX:
+`basename $0` [-u URL]
+
+OPTIONS:
+
+    -u  url to fpm status page  (optional; default: $defaulturl)
+    -h or --help   show this help.
+
+PARAMETERS:
+
+    None.
+
+EXAMPLE:
+`basename $0` -u http://localhost/my-custom-fpm-statuspage.php
+
+EOF
+}
+
+# ----------------------------------------------------------------------
+# check help
+# ----------------------------------------------------------------------
+
+case "$1" in
+    "--help"|"-h")
+        showHelp
+        exit 0
+        ;;
+    *)
+esac
+
 # ----------------------------------------------------------------------
 # pre checks
 # ----------------------------------------------------------------------
 ph.require wget
 
+
 # ----------------------------------------------------------------------
 # check params
 # ----------------------------------------------------------------------
 
-# --- check param -h
-if [ "$1" = "-h" ]; then
-    echo "
-    Check PHP FPM status
-
-    usage: $0 [-u URL]
-
-        -u  url to fpm status page  (optional; default: $defaulturl)
-        -h  this help
-
-    "
-    exit 0
-fi
-
 # set default / override from command line params
 typeset -i iWarnLimit=`     ph.getValueWithParam 75 w "$@"`
 typeset -i iCriticalLimit=` ph.getValueWithParam 90 c "$@"`
@@ -100,25 +142,31 @@ typeset -i iMaxChilds=$( _getvalue "max children reached")
 # damn, count of slots is in the config only - not in status output
 # iUsage=$iActive*100/$iSlots
 # ph.setStatusByLimit $iUsage $iWarnLimit $iCriticalLimit
-if [ $iQueue -gt 0 -o $iSlow -gt 0 ]; then
+if [ $iQueue -gt 0 -o $iSlow -gt 0 -o $iIdle -eq 0 ]; then
         ph.setStatus warning
 fi
 if [ $iMaxChilds -gt 0 ]; then
-        ph.setStatus critical
+        # ph.setStatus critical
+        ph.setStatus warning
 fi
 
 
 # --- output
 ph.status "PHP-FPM: active: $iActive (max: $iMaxActive) .. wait: $iIdle .. queue: $iQueue (max: $iMaxQueue) .. speed: $iSpeed req per sec"
 
+if [ $iIdle -eq 0 ]; then
+        echo "WARNING: $iIdle idle workers available."
+        echo "         Maybe there is a current peak only."
+        echo "         Or count of allowed workers (pm.max_children) or spare servers (pm.XXX_spare_servers) is too low."
+fi
 if [ $iQueue -gt 0 ]; then
-        echo "WARNING: $iQueue queued requests were found"
+        echo "WARNING: $iQueue queued requests were found."
 fi
 if [ $iSlow -gt 0 ]; then
-        echo "WARNING: $iSlow slow requests were found"
+        echo "WARNING: $iSlow slow requests were found."
 fi
 if [ $iMaxChilds -gt 0 ]; then
-        echo "CRITICAL: max. children was reached $iMaxChilds"
+        echo "WARNING: max. children was reached $iMaxChilds. Max. active were $iMaxActive - maybe count of allowed workers is too low."
 fi
 echo
 cat $tmpfile