Provided by: httping_2.5-5_amd64 bug

NAME

       httping - measure the latency and throughput of a webserver

SYNOPSIS

       httping [options]

       options:  [-g  url]  [-h  hostname]  [-p  portnumber]  [-x  proxyhost:port] [-c count] [-i
       interval] [-t timeout] [-s] [-G] [-b] [-L xferlimit] [-X] [-l] [-z] [-f] [-m] [-o  rc,...]
       [-e  string]  [-I useragent string] [-R referer string] [-r] [-n warn,crit] [-N mode] [-q]
       [-V]

DESCRIPTION

       The program httping lets you measure the latency of a webserver. Since version 1.0.6  also
       the throughput can be measured.

OPTIONS

       -5     The proxy server selected is a SOCKS5 server.

       -6     Enable IPv6 mode. Default is IPv4.

       -a     Audible ping

       -b     Use this switch together with '-G'. When this option is used, the transferspeed (in
              KB/s) is shown.

       -B     Use this switch together with '-G'. Ask the HTTP server to  compress  the  returned
              data:  this  will  reduce  the  influence of the bandwidth of your connection while
              increasing the influence of the processorpower of the HTTP server.

       -c count
              How many probes to send before exiting.

       -D     Do not draw graphs in ncurses mode (-K).

       -e str When the status-code differs from the ones selected with '-o', the given string  is
              displayed.

       -E     Retrieve    proxy   settings   from   environment   variables   ('http_proxy'   and
              'https_proxy').

       -F     Attempt TCP Fast Open while trying to connect to a server (for Linux,  version  3.7
              onwards of the kernel)

       -f     Flood  ping: do not sit idle between each ping but ping as fast as the computer and
              network allow you to.

       -G     Do a GET request instead of a HEAD request:  this  means  that  also  the  complete
              page/file  must  be  transferred. Note that in this case you're no longer measuring
              the latency!

       -g url This selects the url to probe. E.g.: http://localhost/

       -h hostname
              Instead of '-g' one can also set a hostname to probe with -h: -h localhost

       -I str UserAgent-string to send to the webserver (instead of 'HTTPing <version>').

       -i interval
              How many seconds to sleep between every probe sent.

       -K     Enable ncurses user interface.

       -L x   Use this switch together with '-G'. Limit the amount of data  transferred  to  'x'.
              Note that this only affects the content of the page/file and not the headerdata.

       -l     Connect  using  SSL:  for  this  to  work  you  need to give a 'https'-url or a 443
              portnumber.

       -m     Show machine readable output (also check '-o' and '-e').

       -N x   Switches HTTPing to Nagios-plugin mode 2: return 0 when  everything  is  fine,  'x'
              when anything fails. E.g.: 1 => Nagios warning state, 2 => Nagios critical state.

       -n warn,crit
              Switches  HTTPing  to  Nagios-plugin  mode  1: return exitcode '1' when the average
              response time is bigger then 'warn', return  exitcode  '2'  when  the  the  average
              response time is bigger then 'crit'. In all other cases return exitcode '0'.

       -o x,x,...
              This  selects  the  HTTP  status-codes which are regarded as an OK-state (only with
              '-m').

       -p portnumber
              -p can be used together with -h. -p selects the portnumber to probe.

       -q     Be quiet, only return an exit-code.

       -R str Referer-string to send to the webserver.

       -Q     Use a persistent connection, i.e. reuse the same TCP connection for  multiple  HTTP
              requests.  Usually possible when 'Connection: Keep-Alive' is sent by server. Adds a
              'C' to the output if httping had to reconnect.

       -r     Only resolve the hostname once: this takes the resolving out of the  loop  so  that
              the latency of the DNS is not measured. Also useful when you want to measure only 1
              webserver  while  the  DNS  returns  a  different  ip-address  for   each   resolve
              ('roundrobin').

       -S     Split  measured  latency in time to connect and time to exchange a request with the
              HTTP server.

       -s     When a successfull transaction was done, show the HTTP statuscode (200, 404, etc.).

       -T x   Read the password for website authentication from file 'x' (instead of entering  it
              on the command line).

       -t timeout
              How long to wait for answer from the other side.

       -U     Enable  authentication  against website. Set username with -U, set password with -P
              (or -T to read the password from a file).

       -v     Increase verbosity mode. To show standard deviation and dates in output.

       -W     Do not abort program if resolving fails.

       -X     Use this switch together with '-G'.  For  each  "ping"  show  the  amount  of  data
              transferred (excluding the headers).

       -x proxyhost[:port]
              Probe  using  a  proxyserver.  Note  that  you're also measuring the latency of the
              proxyserver!

       -Y     Enable colors

       -z     When connecting using SSL, display the fingerprint of the  X509  certificate(s)  of
              the peer.

       --abbreviate
              Abbreviate values bigger than thousand, million, billion, etc.

       --adaptive-interval or --ai
              (Try to) ping on the same interval. E.g. if interval is set to 1.0 seconds and ping
              a ping t[n] occurs at 500s with duration 250ms, then the next  ping  (t[n+1])  will
              happen  at  501 seconds and not at 501.25 seconds. Of course when the ping duration
              is > bigger than the interval,  a  ping  will  be  "skipped"  (not  literally:  the
              sequence  number  will  continue)  and t[n+1] will then be e.g. 502s instead of the
              expected 501s. This is useful for example in the ncurses output mode where  an  fft
              is calculated over the ping times.

       --aggregates x[,y[,z[,etc.]]]
              Show aggregates every x[/y[/z[/etc]]] seconds.

       --divert-connect x
              Ignore  the  hostname  in the URL and connect to 'x' instead. The given URL will be
              requested at 'x'.

       --draw-phase
              Not only draw the magnitude of the fourier transform, draw the phase as well.

       --graph-limit x
              If values measured are bigger than x, then they're limitted to x.

       --header x
              Add an additional request-header 'x'.

       --keep-cookies
              When the server sends a cookie, it will be returned in the next request.

       --max-mtu x
              Maximum MTU to use. Cannot be larger than network interface MTU.

       --no-host-header
              Do not put a "Host:"-header in the request header.

       --no-tcp-nodelay
              Do not disable "tcp delay" (Naggle).

       --priority x
              Set priority of packets.

       --tos x
              Set type of service.

       --proxy-user x
              Use username 'x' to authenticate against proxy (http/socks5) server (optional).

       --proxy-password x
              Use password 'x' to authenticate against proxy (http/socks5) server (optional).

       --proxy-password-file x
              Read password from file 'x' to  authenticate  against  proxy  (http/socks5)  server
              (optional).

       --recv-buffer x
              Set the size of the receive buffer (in bytes).

       --slow-log x
              When  the  duration is x or more, show ping line in the slow log window (the middle
              window).

       --threshold-red x
              If the measured threshold is higher than x (and -Y is given), then the shown  value
              is colored red. If you also use --threshold-yellow, then this value must be bigger.

       --threshold-yellow x
              If  the measured threshold is higher than x (and -Y is given), then the shown value
              is colored yellow.

       --threshold-show x
              If the measured threshold is higher than x, then the result is  shown  (default  is
              show always). The value x is in ms.

       --timestamp or --ts
              Put a timestamp before the result-lines. Use -v to also show a date.

       --tx-buffer x
              Set the size of the transmit buffer (in bytes).

       -V     Show the version and exit.

OUTPUT

       In  split  mode  (-S) something like "time=0.08+24.09+23.17+15.64+0.02=62.98 ms" is shown.
       The first value is the time it took to resolve the  hostname  (or  'n/a'  if  it  did  not
       resolve  in  this  iteration,  e.g. in "resolve once" (-r) mode), then the time it took to
       connect (or -1 for example in persistent connection (-Q, HTTP v1.1), after that  the  time
       it  took  to  put  the  request  on the wire, then the time it took for the HTTP server to
       process the request and send it back and lastly the time it took to close the connection.

GRAPH

       The graph in the ncurses uses colors to encode a meaning. Green:  value  is  less  than  1
       block.  Red:  the  value  did  not  fit  in  the  graph.  Blue:  the value was limitted by
       --graph-limit. Cyan: no measurement for that point in time.

KEYS

       Press <CTRL> + <c> to exit the program. It will display a summary of  what  was  measured.
       In  the  ncurses  gui, press <CTRL> + <l> to forcibly redraw the screen. Press 'H' to halt
       the graphs (and again to continue). Press 'q' to stop the program (<CTRL> + <c> will  work
       too).

EXAMPLES

       httping -g http://localhost/
              Ping the webserver on host 'localhost'.

       httping -h localhost -p 1000
              Ping the webserver on host 'localhost' and portnumber 1000.

       httping -l -g https://localhost/
              Ping the webserver on host 'localhost' using an SSL connection.

       httping -g http://localhost/ -U username -P password
              Ping the webserver on host 'localhost' using the Basic HTTP Authentication.

BUGS

       None. This program is totally bug-free.

SEE ALSO

       http://www.vanheusden.com/httping/

NOTES

       This page describes httping as found in the httping-2.3 package; other versions may differ
       slightly.  Please mail corrections and additions to mail@vanheusden.com.  Report  bugs  in
       the    program    to   mail@vanheusden.com.    Please   consider   sending   bitcoins   to
       1N5Sn4jny4xVwTwSYLnf7WnFQEGoVRmTQF