OLD | NEW |
(Empty) | |
| 1 <!-- |
| 2 Copyright 2014 The Crashpad Authors. All rights reserved. |
| 3 |
| 4 Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 you may not use this file except in compliance with the License. |
| 6 You may obtain a copy of the License at |
| 7 |
| 8 http://www.apache.org/licenses/LICENSE-2.0 |
| 9 |
| 10 Unless required by applicable law or agreed to in writing, software |
| 11 distributed under the License is distributed on an "AS IS" BASIS, |
| 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 13 See the License for the specific language governing permissions and |
| 14 limitations under the License. |
| 15 --> |
| 16 |
| 17 # generate_dump(1) |
| 18 |
| 19 ## Name |
| 20 |
| 21 generate_dump—Generate a minidump file containing a snapshot of a running |
| 22 process |
| 23 |
| 24 ## Synopsis |
| 25 |
| 26 **generate_dump** [_OPTION…_] _PID_ |
| 27 |
| 28 ## Description |
| 29 |
| 30 Generates a minidump file containing a snapshot of a running process whose |
| 31 process identifier is _PID_. By default, the target process will be suspended |
| 32 while the minidump is generated, and the minidump file will be written to |
| 33 `minidump.PID`. After the minidump file is generated, the target process resumes |
| 34 running. |
| 35 |
| 36 The minidump file will contain information about the process, its threads, its |
| 37 modules, and the system. It will not contain any exception information because |
| 38 it will be generated from a live running process, not as a result of an |
| 39 exception occurring. |
| 40 |
| 41 On macOS, this program uses `task_for_pid()` to access the process’ task port. |
| 42 This operation may be restricted to use by the superuser, executables signed by |
| 43 an authority trusted by the system, and processes otherwise permitted by |
| 44 taskgated(8). Consequently, this program must normally either be signed or be |
| 45 invoked by root. It is possible to install this program as a setuid root |
| 46 executable to overcome this limitation, although it will remain impossible to |
| 47 generate dumps for processes protected by [System Integrity Protection |
| 48 (SIP)](https://support.apple.com/HT204899), including those whose “restrict” |
| 49 codesign(1) option is respected. |
| 50 |
| 51 This program is similar to the gcore(1) program available on some operating |
| 52 systems. |
| 53 |
| 54 ## Options |
| 55 |
| 56 * **-r**, **--no-suspend** |
| 57 |
| 58 The target process will continue running while the minidump file is |
| 59 generated. Normally, the target process is suspended during this operation, |
| 60 which guarantees that the minidump file will contain an atomic snapshot of |
| 61 the process. |
| 62 |
| 63 This option may be useful when attempting to generate a minidump from a |
| 64 process that dump generation has an interprocess dependency on, such as a |
| 65 system server like launchd(8) or opendirectoryd(8) on macOS. Deadlock could |
| 66 occur if any portion of the dump generation operation blocks while waiting |
| 67 for a response from one of these servers while they are suspended. |
| 68 |
| 69 * **-o**, **--output**=_FILE_ |
| 70 |
| 71 The minidump will be written to _FILE_ instead of `minidump.PID`. |
| 72 |
| 73 * **--help** |
| 74 |
| 75 Display help and exit. |
| 76 |
| 77 * **--version** |
| 78 |
| 79 Output version information and exit. |
| 80 |
| 81 ## Examples |
| 82 |
| 83 Generate a minidump file in `/tmp/minidump` containing a snapshot of the process |
| 84 with PID 1234. |
| 85 |
| 86 ``` |
| 87 $ generate_dump --output=/tmp/minidump 1234 |
| 88 ``` |
| 89 |
| 90 ## Exit Status |
| 91 |
| 92 * **0** |
| 93 |
| 94 Success. |
| 95 |
| 96 * **1** |
| 97 |
| 98 Failure, with a message printed to the standard error stream. |
| 99 |
| 100 ## See Also |
| 101 |
| 102 [catch_exception_tool(1)](mac/catch_exception_tool.md) |
| 103 |
| 104 ## Resources |
| 105 |
| 106 Crashpad home page: https://crashpad.chromium.org/. |
| 107 |
| 108 Report bugs at https://crashpad.chromium.org/bug/new. |
| 109 |
| 110 ## Copyright |
| 111 |
| 112 Copyright 2014 [The Crashpad |
| 113 Authors](https://chromium.googlesource.com/crashpad/crashpad/+/master/AUTHORS). |
| 114 |
| 115 ## License |
| 116 |
| 117 Licensed under the Apache License, Version 2.0 (the “License”); |
| 118 you may not use this file except in compliance with the License. |
| 119 You may obtain a copy of the License at |
| 120 |
| 121 http://www.apache.org/licenses/LICENSE-2.0 |
| 122 |
| 123 Unless required by applicable law or agreed to in writing, software |
| 124 distributed under the License is distributed on an “AS IS” BASIS, |
| 125 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 126 See the License for the specific language governing permissions and |
| 127 limitations under the License. |
OLD | NEW |