xref: /openbmc/openbmc-tools/dbus-vis/README.md (revision e310dd91688c0b6d6eaee9e6889bf61ee6ce09b7)
1*e310dd91SPatrick Williams# dbus-vis
2*e310dd91SPatrick Williams
3*e310dd91SPatrick WilliamsThis program captures & visualizes IPMI traffic on a BMC running OpenBMC. It
4*e310dd91SPatrick Williamsallows the user to capture & view IPMI requests in a time line format, as well
5*e310dd91SPatrick Williamsas generate commands that can talk to `ipmid` or `ipmitool` to replay those IPMI
6*e310dd91SPatrick Williamsrequests.
7b65280ffSSui Chen
8b65280ffSSui Chen## Build
9b65280ffSSui Chen
10*e310dd91SPatrick WilliamsThis program is based on Electron, and should be compatible with Windows, Linux,
11*e310dd91SPatrick WilliamsMac and ChromeOS's Linux environment.
12b65280ffSSui Chen
13*e310dd91SPatrick WilliamsThe following commands are all run from this folder (where `index.html` is
14*e310dd91SPatrick Williamslocated.)
15b65280ffSSui Chen
16*e310dd91SPatrick WilliamsTo build and run, a user would first need to install node.js and npm (Node.js
17*e310dd91SPatrick Williamspackage manager), and then checkout `dbus-pcap` to this folder. To install
18*e310dd91SPatrick Williamsnode.js on a Ubuntu/Debian-based system:
19b65280ffSSui Chen
20*e310dd91SPatrick WilliamsFirst, install `npm` and `node.js` using a method that is suitable for your
21*e310dd91SPatrick Williamssetup.
22b65280ffSSui Chen
23*e310dd91SPatrick Williams```sh
24b65280ffSSui Chen$ node --version
25b65280ffSSui Chenv10.20.1
26b65280ffSSui Chen$ npm --version
27b65280ffSSui Chen6.14.4
28b65280ffSSui Chen```
29b65280ffSSui Chen
30*e310dd91SPatrick WilliamsThen, with `npm`, `node.js` installed and `dbus-pcap` downloaded to this folder,
31*e310dd91SPatrick Williamsrun the following commands:
32b65280ffSSui Chen
33b65280ffSSui Chen1. `npm install`
34b65280ffSSui Chen
35b65280ffSSui Chen2. `npm start`
36b65280ffSSui Chen
37b65280ffSSui Chen## Run
38b65280ffSSui Chen
39b65280ffSSui Chen### Open existing file
40b65280ffSSui Chen
41b65280ffSSui Chen1. Select "Open an existing file"
42b65280ffSSui Chen2. Click "Open file"
43*e310dd91SPatrick Williams3. Choose a file (The file should be a text file, and its contents should be
44*e310dd91SPatrick Williams   dbus-monitor outputs)
45b65280ffSSui Chen
46b65280ffSSui Chen### Capture
47b65280ffSSui Chen
48b65280ffSSui Chen1. Select "Capture on a BMC"
49b65280ffSSui Chen2. Fill the Megapede client name in the text box
50b65280ffSSui Chen3. Choose a capture mode (live or staged)
51b65280ffSSui Chen4. Click "start capture" and watch the status updates
52b65280ffSSui Chen5. Click "stop capture" when done
53*e310dd91SPatrick Williams6. If something happens, manual clean-up might be needed, such as stopping
54*e310dd91SPatrick Williams   dbus-monitor on the BMC
55b65280ffSSui Chen
56b65280ffSSui Chen![Image](./scrnshot.png)
57