HTTPRY(1)
π httpry(1) β General Commands Manual, but make it a group chat π
okay bestie, so this is httpry(1), from the General Commands Manual, and it's genuinely one of the most useful little tools ever, so let's get into it π
πΈ NAME πΈ
httpry β the HTTP logging and information retrieval tool, aka your new fave β¨
π¦ SYNOPSIS π¦
httpry [ -dFpq ] [ -b file ] [ -f format ] [ -i device ] [ -m methods ]
[ -n count ] [ -o file ] [ -P file ] [ -r file ] [ -S bytes ] [ -u user
] [ 'expression' ]
httpry -s [ -l threshold ] [ -t seconds ]
httpry -h
π DESCRIPTION π
so httpry is a tool made for displaying and logging HTTP traffic. and here's the important part, bestie β it is not designed to do the analysis itself. no no. it captures, parses and logs the traffic so you can analyze it later. main character energy but make it humble π«Ά
you can run it in real time and watch the live traffic on the wire, or run it as a daemon process that logs everything into an output file. both are iconic, pick your vibe β¨
π OPTIONS π
-b fileβ write every single processed HTTP packet to a binary pcap dump file. lowkey so good if you wanna dig into the logged data later π₯-dβ run the program as a daemon process. all the program status output goes to syslog, and a pid file gets created for the process in/var/run/httpry.pidby default. requires an output file specified with-o. no-o, no daemon, fr fr.-f formatβ hand it a comma-delimited string saying which parsed HTTP data to output. go peek at thedoc/format-stringfile for all the deets on the available options and syntax π-Fβ disable all output buffering. super helpful when you're piping httpry output into another program. it's giving instant gratification π-hβ show a brief description of these options. short and sweet, we love her.-i deviceβ specify an ethernet interface for the program to listen on. if you don't specify one, the program polls the system for a list of interfaces and picks the first one found. bestie, just set it yourself, trust π-l thresholdβ set a requests-per-second rate threshold value when you're running in rate statistics mode (-s). only hosts with a rps value greater than or equal to this number get displayed. defaults to1.-m methodsβ give it a comma-delimited string that specifies which request methods to parse. if you don't set this option, it defaults to parsing all of the standard RFC2616 method strings. see thedoc/method-stringfile for more info π-n countβ parse this number of HTTP packets and then exit. defaults to0, which means loop forever βΎοΈ-o fileβ specify an output file for writing parsed packet data. the classic move.-pβ do not put the NIC in promiscuous mode on startup. heads up though: the NIC could already be in that mode for another reason, so don't be shocked π-P fileβ specify a path and filename for creating the PID file when you're in daemon mode.-qβ suppress non-critical output (the startup banner, statistics, etc.). quiet luxury π-r fileβ provide an input capture file to read from instead of doing a live capture. and the best part?? this option does not require root privileges π-sβ run httpry in an HTTP request per second display mode. this periodically displays the rate per active host and the total rate at a specified interval. the numbers, the drama, obsessed β¨-Sβ specify a number of bytes to skip in the ethernet header. this lets you account for custom header offsets.-t secondsβ specify the host statistics display interval in seconds when running in rate statistics mode (-s). defaults to5seconds.
ok so heads up, the original page has a stray merge-conflict marker sitting right here in this entry: >>>>>>> HEAD~0. not me noticing that π anyway, the actual info is the sentence above.
-u userβ specify an alternate user to take ownership of the process and any output files. you will need root privileges to do this; it switches to the new user after initialization.'expression'β specify a bpf-style capture filter, overriding the default. here are a few basic examples, starting with the default filter:
'tcp port 80 or 8080'
'tcp dst port 80'
'tcp dst port 80 and src host 192.168.1.1'
so those filters, in order, will: capture all web traffic both directions on two common ports, capture only requests made to port 80, and capture requests to port 80 by a particular host. respectively π
see man tcpdump for more info on the syntax and the available primitives.
π«Ά AUTHOR π«Ά
httpry was written by Jason Bittel <jason.bittel@gmail.com>. see the included COPYING file for specific licensing information.
and that's the whole page, bestie π β General Commands Manual, httpry(1), that's the footer, and honestly? slay. periodt πβ¨
π¦ where this page comes from
- debian bookworm: httpry 0.1.8-3 Β· GPL-2.0-or-later
- debian trixie: httpry 0.1.8-3+b1 Β· GPL-2.0-or-later
- ubuntu jammy: httpry 0.1.8-2 Β· GPL-2.0-or-later
- ubuntu noble: httpry 0.1.8-3build2 Β· GPL-2.0-or-later
- ubuntu questing: httpry 0.1.8-3build2
- ubuntu resolute: httpry 0.1.8-5 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms