Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: logdog/client/cmd/logdog_butler/README.md

Issue 2183233002: Add LogDog project and component documentation. (Closed) Base URL: https://github.com/luci/luci-go@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « logdog/client/README.md ('k') | logdog/client/cmd/logdog_cat/README.md » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 LogDog Butler
2 =============
3
4 The LogDog Butler runs on log-producing clients and manages the ingestion of
5 log data from a read-forward stream, formatting and bundling it into [log
6 protobufs](../../../api/logpb), and the transmission of those protobufs through
7 the **Transport Layer** to **Collector** instances.
8
9 The Butler is fairly configurable, and is capable of being used in multiple
10 scenarios via its subcommands:
11
12 * `stream`, which uploads the contents of a single log stream.
13 * `serve`, which runs a Butler stream server instance.
14 * `run`, which runs another command, instrumenting its enviornment and standard
15 file descriptors for log streaming.
16
17 ## Stream Servers
18
19 The Butler, based on its configuration, may configure default streams. For
20 example, when using the `run` subcommand, it has the option to connect the
21 bootstrapped process' `STDOUT` and `STDERR` streams to LogDog streams.
22
23 However, the Butler can also enable additional stream registration by
24 instantiating a local **Stream Server** and exposing that to other applications.
25 Those applications can then connect to the **Stream Server**, perform a minimial
26 [handshake](../../butlerproto), and connect an additional stream to the Butler.
27
28 Clients can use the [streamclient](../../butlerlib/streamclient) package to
29 connect to a stream server and create Butler streams. Additional stream client
30 packages are availalbe for other languages:
31
32 * [Python](https://github.com/luci/luci-py/tree/master/client/libs/logdog)
33
34 **Stream Servers** are created by specifying the `-streamserver-uri` parameter
35 to LogDog. Stream server options vary by operating system.
36
37 ### POSIX
38
39 POSIX systems (Linux, Mac) support the following stream servers:
40
41 * `unix:<path>`, where `path` is a filesystem path to a named UNIX domain socket
42 to create.
43
44 ### Windows
45
46 Windows systems support the following stream servers:
47
48 * `net.pipe:<name>`, where `name` is a valid Windows named pipe name.
49
50 ## Production
51
52 In production, each Butler instance will begin by registering a unique log
53 stream Prefix with its **Coordinator** instance. The exchange will ensure that
54 only that specific Butler instance may create log streams underneath of that
55 Prefix.
56
57 Production streaming can be requested by specifying the `logdog` Output option
58 and associated parameters:
59
60 ```shell
61 $ logdog_butler -output logdog,host=<coordinator-host> ...
62 ```
63
64 The Butler instance must be configured to use a service account that has
65 **WRITE** permission for the target project.
66
67 This will cause the Butler to perform prefix registration during its Output
68 initialization, prior to any bootstrapping or streaming.
OLDNEW
« no previous file with comments | « logdog/client/README.md ('k') | logdog/client/cmd/logdog_cat/README.md » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698