|
|
4 年之前 | |
|---|---|---|
| .. | ||
| Sources | 5 年之前 | |
| .gitignore | 5 年之前 | |
| Package.swift | 4 年之前 | |
| README.md | 5 年之前 | |
This example demonstrates how to use the NIOWritePCAPHandler from
NIOExtras with gRPC Swift.
The example configures a client to use the NIOWritePCAPHandler with a file
sink so that all network traffic captured by the handler is written to a
.pcap file. The client makes a single bidirectional streaming RPC to an Echo
server provided by gRPC Swift.
The captured network traffic can be inspected by opening the .pcap with
tools like Wireshark or tcpdump.
The example relies on the Echo server from the gRPC Swift repository. To start the server, from the root of the gRPC repository run:
$ swift run Echo server 0
Note the port printed by the server. In a separate shell, in this directory run:
$ swift run PCAPExample localhost <SERVER_PORT>
Some logs should be emitted similar to below, including the path of the .pcap file:
2020-07-24T10:48:50+0100 info gRPC PCAP Demo : Creating fileSink for path './channel-ObjectIdentifier(0x00007f8a25604c40).pcap'
2020-07-24T10:48:50+0100 info gRPC PCAP Demo : ✅ Successfully created fileSink for path './channel-ObjectIdentifier(0x00007f8a25604c40).pcap'
...
2020-07-24T10:48:50+0100 info gRPC PCAP Demo : ✅ RPC completed successfully
...
2020-07-24T10:48:50+0100 info gRPC PCAP Demo : Done!
The .pcap file can be opened with either: Wireshark or tcpdump
-r <PCAP_FILE>.