Skip to content

Commit d617bf6

Browse files
committed
regen doc
1 parent dd89600 commit d617bf6

2 files changed

Lines changed: 104 additions & 1 deletion

File tree

doc/h2o.conf.5

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4247,3 +4247,106 @@ This library currently supports only IPv4 addresses. TrieAddr#match? returns fal
42474247

42484248

42494249

4250+
4251+
.SH USING H2OLOG FOR TRACING
4252+
4253+
4254+
h2olog is an experimental BPF (kernel doc) backed tracing tool for the H2O server.
4255+
It can be used for tracing HTTP-level or QUIC-level events.
4256+
4257+
Since h2olog is an experimental program, its command-line interface might change without notice.
4258+
4259+
Installing from Source
4260+
4261+
See requirements for build prerequisites.
4262+
If dependencies are satisfied, h2olog is built automatically. It is possible to manually turn on / off the build of h2olog by using the -DWITH_H2OLOG option. This option takes either ON> or OFF as the argument.
4263+
If you have BCC installed to a non-standard path, use pkg-config for cmake.
4264+
4265+
.PP
4266+
.nf
4267+
.RS
4268+
$ PKG_CONFIG_PATH=/path/to/bcc/lib/pkgconfig cmake [options]
4269+
4270+
.RE
4271+
.fi
4272+
.PP
4273+
4274+
Requirements
4275+
4276+
For building h2olog
4277+
4278+
C++11 compiler
4279+
CMake for generating the build files
4280+
pkg-config for detecting dependencies
4281+
Python 3 for the code generator
4282+
BCC (BPF compiler collection, a.k.a. bpfcc; >= 0.11.0) installed on your system
4283+
4284+
For Ubuntu 20.04 or later, you can install dependencies with:
4285+
.PP
4286+
.nf
4287+
.RS
4288+
$ sudo apt install clang cmake python3 libbpfcc-dev linux-headers-$(uname -r)
4289+
4290+
.RE
4291+
.fi
4292+
.PP
4293+
For running h2olog
4294+
4295+
Root privilege to execute h2olog
4296+
Linux kernel (>= 4.9)
4297+
4298+
4299+
Quickstart
4300+
h2olog -p $H2O_PID shows varnishlog-like tracing.
4301+
4302+
.PP
4303+
.nf
4304+
.RS
4305+
$ sudo h2olog -p $(pgrep -o h2o)
4306+
4307+
11 0 RxProtocol HTTP/3.0
4308+
11 0 RxHeader :authority torumk.com
4309+
11 0 RxHeader :method GET
4310+
11 0 RxHeader :path /
4311+
11 0 RxHeader :scheme https
4312+
11 0 TxStatus 200
4313+
11 0 TxHeader content-length 123
4314+
11 0 TxHeader content-type text/html
4315+
... and more ...
4316+
4317+
.RE
4318+
.fi
4319+
.PP
4320+
4321+
Tracing QUIC events
4322+
Server-side QUIC events can be traced using the quic subcommand.
4323+
Events are rendered in JSON format.
4324+
4325+
.PP
4326+
.nf
4327+
.RS
4328+
$ sudo h2olog quic -p $(pgrep -o h2o)
4329+
^
4330+
|_ The quic subcommand
4331+
4332+
.RE
4333+
.fi
4334+
.PP
4335+
4336+
Here’s an example trace.
4337+
4338+
.PP
4339+
.nf
4340+
.RS
4341+
{"time":1584380825832,"type":"accept","conn":1,"dcid":"f8aa2066e9c3b3cf"}
4342+
{"time":1584380825835,"type":"crypto-decrypt","conn":1,"pn":0,"len":1236}
4343+
{"time":1584380825832,"type":"quictrace-recv","conn":1,"pn":0}
4344+
{"time":1584380825836,"type":"crypto-handshake","conn":1,"ret":0}
4345+
... and more ...
4346+
4347+
.RE
4348+
.fi
4349+
.PP
4350+
4351+
4352+

doc/search/searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)