OLD | NEW |
| (Empty) |
1 // Copyright 2014 The Crashpad Authors. All rights reserved. | |
2 // | |
3 // Licensed under the Apache License, Version 2.0 (the "License"); | |
4 // you may not use this file except in compliance with the License. | |
5 // You may obtain a copy of the License at | |
6 // | |
7 // http://www.apache.org/licenses/LICENSE-2.0 | |
8 // | |
9 // Unless required by applicable law or agreed to in writing, software | |
10 // distributed under the License is distributed on an "AS IS" BASIS, | |
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
12 // See the License for the specific language governing permissions and | |
13 // limitations under the License. | |
14 | |
15 :doctype: manpage | |
16 | |
17 = crashpad_handler(8) | |
18 | |
19 == Name | |
20 | |
21 crashpad_handler - Crashpad’s exception handler server | |
22 | |
23 == Synopsis | |
24 | |
25 [verse] | |
26 *crashpad_handler* ['OPTION…'] | |
27 | |
28 == Description | |
29 | |
30 This program is Crashpad’s main exception-handling server. It is responsible for | |
31 catching exceptions, writing crash reports, and uploading them to a crash report | |
32 collection server. Uploads are disabled by default, and can only be enabled by a | |
33 Crashpad client using the Crashpad client library, typically in response to a | |
34 user requesting this behavior. | |
35 | |
36 This server is normally started by its initial client, and it performs a | |
37 handshake with this client via a pipe established by the client that is | |
38 inherited by the server, referenced by the *--handshake-fd* argument. During the | |
39 handshake, the server furnishes the client with a send right that the client may | |
40 use as an exception port. The server retains the corresponding receive right, | |
41 which it monitors for exception messages. When the receive right loses all | |
42 senders, the server exits after allowing any upload in progress to complete. | |
43 | |
44 It is not normally appropriate to invoke this program directly. Usually, it will | |
45 be invoked by a Crashpad client using the Crashpad client library. Arbitrary | |
46 programs may be run with a Crashpad handler by using | |
47 man_link:run_with_crashpad[1] to establish the Crashpad client environment | |
48 before running a program. | |
49 | |
50 == Options | |
51 *--annotation*='KEY=VALUE':: | |
52 Sets a process-level annotation mapping 'KEY' to 'VALUE' in each crash report | |
53 that is written. This option may appear zero, one, or multiple times. | |
54 + | |
55 Most annotations should be provided by the Crashpad client as module-level | |
56 annotations instead of process-level annotations. Module-level annotations are | |
57 more flexible in that they can be modified and cleared during the client | |
58 program’s lifetime. Module-level annotations can be set via the Crashpad client | |
59 library. Process-level annotations are useful for annotations that the | |
60 collection server requires be present, that have fixed values, and for cases | |
61 where a program that does not use the Crashpad client library is being | |
62 monitored. | |
63 + | |
64 Breakpad-type collection servers only require the +"prod"+ and +"ver"+ | |
65 annotations, which should be set to the product name or identifier and product | |
66 version, respectively. It is unusual to specify other annotations as | |
67 process-level annotations via this argument. | |
68 | |
69 *--database*='PATH':: | |
70 Use 'PATH' as the path to the Crashpad crash report database. This option is | |
71 required. Crash reports are written to this database, and if uploads are | |
72 enabled, uploaded from this database to a crash report collection server. If the | |
73 database does not exist, it will be created, provided that the parent directory | |
74 of 'PATH' exists. | |
75 | |
76 *--handshake-fd*='FD':: | |
77 Perform the handshake with the initial client on the file descriptor at 'FD'. | |
78 This option is required. | |
79 | |
80 *--url*='URL':: | |
81 If uploads are enabled, sends crash reports to the Breakpad-type crash report | |
82 collection server at 'URL'. Uploads are disabled by default, and can only be | |
83 enabled for a database by a Crashpad client using the Crashpad client library, | |
84 typically in response to a user requesting this behavior. If this option is not | |
85 specified, this program will behave as if uploads are disabled. | |
86 | |
87 *--help*:: | |
88 Display help and exit. | |
89 | |
90 *--version*:: | |
91 Output version information and exit. | |
92 | |
93 == Exit Status | |
94 | |
95 *0*:: | |
96 Success. | |
97 | |
98 *1*:: | |
99 Failure, with a message printed to the standard error stream. | |
100 | |
101 == See Also | |
102 | |
103 man_link:catch_exception_tool[1], | |
104 man_link:crashpad_database_util[1], | |
105 man_link:generate_dump[1], | |
106 man_link:run_with_crashpad[1] | |
107 | |
108 include::../../doc/support/man_footer.ad[] | |
OLD | NEW |