[ 
https://issues.apache.org/jira/browse/FELIX-6097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16813130#comment-16813130
 ] 

Georg Henzler edited comment on FELIX-6097 at 4/9/19 8:43 AM:
--------------------------------------------------------------

Useful bash script to watch response codes during startup:
{code}
http_code=-1
last_http_code=-1
url=${1:-http://localhost:8080/}

for ((i=1;;i++)); 
do
    timestamp=`date +%T.%3N`
    outputFile="curl-$timestamp.out"
    http_code=`curl -o $outputFile -f --max-time 2 --connect-timeout 2 -w 
"%{http_code}" "$url" 2> error.log`
    http_code=$((http_code))

    if (( http_code != 500 )); then # keep 500 responses for analysis, delete 
others
        rm -f $outputFile 
    fi

    logMsg="$timestamp $url response code: $http_code"
    if (( http_code != last_http_code )); then
          echo "$logMsg";
    else
      if ((i % 50 == 0 )); then
         echo "$logMsg (still unchanged)";
      fi
    fi
    last_http_code=$http_code
done
{code}


was (Author: henzlerg):
Useful bash script to see check response codes during startup:
{code}
http_code=-1
last_http_code=-1
url=${1:-http://localhost:8080/}

for ((i=1;;i++)); 
do
    timestamp=`date +%T.%3N`
    outputFile="curl-$timestamp.out"
    http_code=`curl -o $outputFile -f --max-time 2 --connect-timeout 2 -w 
"%{http_code}" "$url" 2> error.log`
    http_code=$((http_code))

    if (( http_code != 500 )); then # keep 500 responses for analysis, delete 
others
        rm -f $outputFile 
    fi

    logMsg="$timestamp $url response code: $http_code"
    if (( http_code != last_http_code )); then
          echo "$logMsg";
    else
      if ((i % 50 == 0 )); then
         echo "$logMsg (still unchanged)";
      fi
    fi
    last_http_code=$http_code
done
{code}

> Improve startup behaviour of ServiceUnavailableFilter for low start levels
> --------------------------------------------------------------------------
>
>                 Key: FELIX-6097
>                 URL: https://issues.apache.org/jira/browse/FELIX-6097
>             Project: Felix
>          Issue Type: Improvement
>          Components: Health Checks
>    Affects Versions: healthcheck.core 2.0.2
>            Reporter: Georg Henzler
>            Assignee: Georg Henzler
>            Priority: Major
>
> After some analysis and after comparing with the sling mechanism at [1], it 
> turns out that if a filter is registered to the http whiteboard, it only 
> becomes active if there is actually a servlet to answer the request 
> (otherwise the filter will never kick in and the request just return 404). 
> In a setup that uses a product that registers the http whiteboard at start 
> level 5 and the product servlets at start level 20, the current version of 
> ServiceUnavailableFilter only kicks in at start level 20 once the product 
> servlets become active when it should really already return 503 during 
> startup start levels 5-19. Although the 404 response code is usually treated 
> equally by machine clients (load balancers, kubernetes probles) it is still 
> not semantically correct, hence this shall be improved to use the mechanism 
> of [1].
> [1] 
> https://github.com/apache/sling-org-apache-sling-starter-startup/blob/f9f9496588e335d7bdee0246abff5fb22051809f/src/main/java/org/apache/sling/starter/startup/impl/HttpStartupSetup.java#L61



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to