History log of /openbmc/phosphor-debug-collector/tools/ (Results 1 – 25 of 128)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
8e81499b04-Feb-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: hoist create_archive out of branches

It was being called in both the if and else branches. Move it before the
conditional to eliminate the duplication.

Tested:
Ran changes in qemu, verifie

dreport: hoist create_archive out of branches

It was being called in both the if and else branches. Move it before the
conditional to eliminate the duplication.

Tested:
Ran changes in qemu, verified dump archive created successfully.

Change-Id: Id6cbe0f06567a8597838d2ceafa69238b383fa52
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

c85df9ca02-Feb-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: fix shellcheck warnings in dreport

- SC2155: split declare and assign for EPOCHTIME
- SC2236: use -n instead of ! -z
- SC2254: quote case patterns
- SC2046/SC2086: quote variables and comma

dreport: fix shellcheck warnings in dreport

- SC2155: split declare and assign for EPOCHTIME
- SC2236: use -n instead of ! -z
- SC2254: quote case patterns
- SC2046/SC2086: quote variables and command substitutions
- SC2231: quote glob pattern in for loop
- SC2006: use $() instead of backticks for getopt
- SC2181: disable with TODO comments (getopt pattern, create_archive)
- SC2002: disable with comment (gendumpheader moved to
openpower-debug-collector)
- Remove tools/dreport.d/dreport from .shellcheck-ignore

Tested:

Ran format-code.sh from openbmc-build-scripts.

Change-Id: I9abdc69d7fd0e2e2882571d9fd145ae10742c742
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

2b8c2f0d02-Feb-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: fix shellcheck warnings in functions

- SC2154: declared variables set by dreport
- SC2115: use ${name_dir:?} to prevent rm -fr /
- SC2181: check exit codes directly instead of $?
- SC2086/S

dreport: fix shellcheck warnings in functions

- SC2154: declared variables set by dreport
- SC2115: use ${name_dir:?} to prevent rm -fr /
- SC2181: check exit codes directly instead of $?
- SC2086/SC2046: quote variables and command expansions
- Remove functions from .shellcheck-ignore

Tested:

Ran format-code.sh from openbmc-build-scripts.

Change-Id: I13bee943341c5d2297ed77a9c9daddea806ba1e8
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

d8af698c30-Jan-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: fix SC2154 shellcheck warning in plugins

Declare variables that are set by dreport and used in plugins.

Tested:

Ran format-code.sh from openbmc-build-scripts. SC2154 warning is gone.

Ch

dreport: fix SC2154 shellcheck warning in plugins

Declare variables that are set by dreport and used in plugins.

Tested:

Ran format-code.sh from openbmc-build-scripts. SC2154 warning is gone.

Change-Id: Ibd817b3a6e928bf76a5f6ee1bb1628cedef7079d
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

e5af9c6730-Jan-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: fix SC2086 shellcheck info in plugins

Quote variables to prevent globbing and word splitting.

Tested:

Ran format-code.sh from openbmc-build-scripts.

Change-Id: Ic0fa981fc34b4c7e62e98d471

dreport: fix SC2086 shellcheck info in plugins

Quote variables to prevent globbing and word splitting.

Tested:

Ran format-code.sh from openbmc-build-scripts.

Change-Id: Ic0fa981fc34b4c7e62e98d471f2c7b5e40b42950
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

e110762f30-Jan-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: fix shellcheck source directives for plugins

Use proper source path instead of disable/null directives for functions
import. Quote $DREPORT_INCLUDE and update .shellcheck-ignore.

Tested:

dreport: fix shellcheck source directives for plugins

Use proper source path instead of disable/null directives for functions
import. Quote $DREPORT_INCLUDE and update .shellcheck-ignore.

Tested:
Ran format-code.sh from openbmc-build-scripts.

Change-Id: I8c5ba7c02e14810938df84cab85e49549d97769e
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

b20157b029-Jan-2026 William de Abreu Pinho <williamdapinho@gmail.com>

dreport: add support for configurable compression algorithms

The check_size() function may compress the entire dump multiple times
during collection, making xz's slow speed a bottleneck. This adds

dreport: add support for configurable compression algorithms

The check_size() function may compress the entire dump multiple times
during collection, making xz's slow speed a bottleneck. This adds a
build-time option to select the compression algorithm.

| Algorithm | check_size() compression time | Tarball Size |
|-----------|-------------------------------|--------------|
| xz | 1581.9 seconds | 214.0K |
| gzip | 27.5 seconds | 231.9K |
| zstd | 40.7 seconds | 225.0K |

New meson option: -Ddump-compression-algorithm=<xz|gzip|zstd>
Default: xz (backward compatible)

Note: busybox does not support zstd natively. The
phosphor-debug-collector recipe will include a PACKAGECONFIG to add zstd
as an RDEPENDS when this compression algorithm is selected.

Tested:

Verified dump creation with each compression algorithm.
```
root@bmc:~# cat /usr/share/dreport.d/dreport.conf
DUMP_COMPRESSION="xz"
root@bmc:~# ls -lh /var/lib/phosphor-debug-collector/dumps/12
-rw-r--r-- 1 root root 214.0K Jan 29 09:08 obmcdump_12_1769704597.tar.xz
```

```
root@bmc:~# cat /usr/share/dreport.d/dreport.conf
DUMP_COMPRESSION="gzip"
root@bmc:~# ls -lh /var/lib/phosphor-debug-collector/dumps/8/obmcdump_8_1769701729.tar.gz
-rw-r--r-- 1 root root 231.9K Jan 29 07:51 /var/lib/phosphor-debug-collector/dumps/8/obmcdump_8_1769701729.tar.gz
```

```
root@bmc:~# cat /usr/share/dreport.d/dreport.conf
DUMP_COMPRESSION="zstd"
root@bmc:~# ls -lh /var/lib/phosphor-debug-collector/dumps/10/obmcdump_10_1769703097.tar.zst
-rw-r--r-- 1 root root 225.0K Jan 29 08:15 /var/lib/phosphor-debug-collector/dumps/10/obmcdump_10_1769703097.tar.zst
```

Change-Id: I58d4dd519e3dcdd1ac43573aca21e08d15d0a25b
Signed-off-by: William de Abreu Pinho <williamdapinho@gmail.com>

show more ...

1482867003-Nov-2025 Amithash Prasad <amithash@meta.com>

dreport: Add mctp diagnostic dump capability

Add a plugin to handle dumping MCTP state information list routes,
addresses, neighbors and links along with the D-Bus tree of the
MCTP service.

Tested:

dreport: Add mctp diagnostic dump capability

Add a plugin to handle dumping MCTP state information list routes,
addresses, neighbors and links along with the D-Bus tree of the
MCTP service.

Tested: built into an Yosemite4 image (Its a Meta multi-host platform
with a lot of MCTP endpoints so a perfect place to test). Ran dreport
and confirmed that the tarball has the required information.

Change-Id: I7fa486b9d0a8bac043df407bd2c8ff7871de0a4d
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...

734c41e902-Oct-2025 Amithash Prasad <amithash@meta.com>

dreport: Add support for multi-chassis BMCs

Add support for BMCs which are capable of managing power to multiple
chassis. This is done by maintaining the same code path supported for
single chassis

dreport: Add support for multi-chassis BMCs

Add support for BMCs which are capable of managing power to multiple
chassis. This is done by maintaining the same code path supported for
single chassis systems and adding a run-time check to detect multiple
chassis.

Tested: built into a Yosemite4 BMC (8-host system) and ran dreport
to and ensured that the tarball contained `chassis0-state.log` to
`chassis8-state.log`.

Change-Id: Id5c2a85a7eae6ecd10dc9f2734c4b0c172f7c831
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...

d5442fb402-Oct-2025 Amithash Prasad <amithash@meta.com>

dreport: Fix incorrect use of return in main script body

We can only return from a function and not from the main script. Change
from `return` to `exit`.

Change-Id: Id0226da0498ceccf2db8cf89259546b

dreport: Fix incorrect use of return in main script body

We can only return from a function and not from the main script. Change
from `return` to `exit`.

Change-Id: Id0226da0498ceccf2db8cf89259546b8cb5f9929
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...

4456bbd902-Oct-2025 Amithash Prasad <amithash@meta.com>

dreport: Migrate from dbus-send to busctl

Recent versions of openbmc has removed dbus-send in favor of busctl.
This change migrates the shell command to move over to using busctl.

Tested: Tested on

dreport: Migrate from dbus-send to busctl

Recent versions of openbmc has removed dbus-send in favor of busctl.
This change migrates the shell command to move over to using busctl.

Tested: Tested on a yosemite4 host and ensured that the tarball
contained the correct info.

Change-Id: I81c68cd9f69b10c59f0fc30cbee3c36357b81639
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...

9bc4e22d01-Oct-2025 Amithash Prasad <amithash@meta.com>

dreport: Add multi-host support for dumping console logs

Dump all files which match the given pattern used by obmc-console.

Tested: Built into a yosemite4 (Multi-host server) and ensured
that the r

dreport: Add multi-host support for dumping console logs

Dump all files which match the given pattern used by obmc-console.

Tested: Built into a yosemite4 (Multi-host server) and ensured
that the resulting tarball contained `obmc-console-host1.log` to
`obmc-console-host8.log` along with the other console dumps.

Change-Id: I3197c052f10c458a72595987eac3acdb713cb27f
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...

7f3c97f701-Oct-2025 Amithash Prasad <amithash@meta.com>

dreport: Add support for multi-host BMCs

Extend the current script to dump the current state of as many hosts as
supported on the current BMC. This is done by checking the number of
host-state servi

dreport: Add support for multi-host BMCs

Extend the current script to dump the current state of as many hosts as
supported on the current BMC. This is done by checking the number of
host-state services.

Tested: Run on Yosemite4 a 8-host platform and ensure the dreport
tarball contains host1-state.log to host8-state.log

Change-Id: Ibf8968923043ded237efda74a120d7e41e584f5a
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...

1019e7a716-Jul-2025 Amithash Prasad <amithash@meta.com>

Fix typo for log_warning

Fix typo `log_warnig` instead of `log_warning`

Change-Id: I3a3fd8e426b5fcdd4faf2785d6e94240cd7ce9d9
Signed-off-by: Amithash Prasad <amithash@meta.com>

3fdc431525-Mar-2025 Deepak Kamat <dkamat@nvidia.com>

Dreport: Add D-Bus Information Collection

Add functionality to collect D-Bus service
information as part of the debug data
collection process. The new file will gather:

dbuslist: A comprehensive li

Dreport: Add D-Bus Information Collection

Add functionality to collect D-Bus service
information as part of the debug data
collection process. The new file will gather:

dbuslist: A comprehensive list of D-Bus services,
objects, and interfaces currently active on the
system

Including this information in debug reports will
enhance troubleshooting capabilities for D-Bus
related issues in OpenBMC based systems. It
provides a snapshot of the system's D-Bus config
and usage at the time of report generation.

These additions will help identify potential
D-Bus communication bottlenecks, unexpected
service behaviors, and assist in diagnosing
issues related to sensor data retrieval,
system management interfaces, and inter-process
communication on the BMC.

Tested on qemuarm.

'''
Dump size: 17K
Untar Dump Size: 220K
Added File Size: 12k
Time for the Dump Completion: 24 sec
Time for the command to run: 0.254s

root@qemuarm:~# time busctl -l
[1] xyz.openbmc_project.User.Manager 228 phosphor-user-m root :1.24 xyz.openbmc_project.User.Manager.service - -
[2] xyz.openbmc_project.bmcweb 168 bmcwebd root :1.5 bmcweb.service - -

real 0m0.254s
user 0m0.069s
sys 0m0.128s

Tested a negative case by making the health monitor stuck by making the service in sleep
by adding this in the service

[Service]
ExecStartPost=/bin/sleep infinity

Initial prints service was active

root@qemuarm:~# systemctl status phosphor-health-monitor.service
* phosphor-health-monitor.service - BMC health monitoring
[3] Loaded: loaded (/usr/lib/systemd/system/phosphor-health-monitor.service; enabled; preset: enabled)
[4] Active: active (running) since Wed 2025-04-02 02:53:33 UTC; 4min 4s ago
Invocation: e1970ecf1dc84167aa5489ef7ba09c56
Main PID: 177 (health-monitor)
Tasks: 2 (limit: 553)
Memory: 828K (peak: 1M)
CPU: 2.097s
CGroup: /system.slice/phosphor-health-monitor.service
`-177 /usr/bin/health-monitor

Make the service sleep and created hung like service scenario.

root@qemuarm:~# systemctl status phosphor-health-monitor.service
* phosphor-health-monitor.service - BMC health monitoring
[5] Loaded: loaded (/usr/lib/systemd/system/phosphor-health-monitor.service; enabled; preset: enabled)
[6] Active: activating (start-post) since Wed 2025-04-02 03:04:21 UTC; 13s ago
Job: 548
Invocation: 132ed98c6ba24f519e20f1feb2e03ecf
Main PID: 369 (health-monitor); Control PID: 370 (sleep)
Tasks: 3 (limit: 553)
Memory: 576K (peak: 1.2M)
CPU: 367ms
CGroup: /system.slice/phosphor-health-monitor.service
|-369 /usr/bin/health-monitor
`-370 /bin/sleep infinity

Took the dump while service is hung.

[7] root@qemuarm:~# busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 1 "i" i 1234
root@qemuarm:~# journalctl -u xyz.openbmc_project.Dump.Manager
...
[8] Apr 02 03:05:08 qemuarm phosphor-dump-manager[212]: OriginatorId is not provided
...
[9] Apr 02 03:05:32 qemuarm phosphor-dump-manager[375]: Wed Apr 2 03:05:32 UTC 2025 Successfully completed
[10] Apr 02 03:05:32 qemuarm phosphor-dump-manager[212]: User initiated dump completed, resetting flag

Dump was successful, downloaded the dump and checked for the dbus-list file.

ls -lrth obmcdump_4_1743563108/
total 220K
-rw-r--r-- 1 dkamat domain-users 219 Apr 2 08:35 summary.log
-rw-r--r-- 1 dkamat domain-users 950 Apr 2 08:35 disk-usage.log

ls -lrth obmcdump_4_1743563108/dbus-list.log
12K Apr 2 08:35 obmcdump_4_1743563108/dbus-list.log

cat obmcdump_4_1743563108/dbus-list.log | grep -i health
[11] :1.47 369 health-monitor root :1.47 phosphor-health-monitor.service - -
[12] xyz.openbmc_project.HealthMon 369 health-monitor root :1.47 phosphor-health-monitor.service - -
'''

Change-Id: I1fd2f1970a79903a800e454ff9592c3d1a6b1eff
Signed-off-by: Deepak Kamat <dkamat@nvidia.com>

show more ...

9a5fac9a25-Mar-2025 Deepak Kamat <dkamat@nvidia.com>

Dreport: Add SoftIRQ Information Collection

Add functionality to collect softIRQ statistics as part of the debug
data collection process. The new file will contain:

- softIRQs: Software interrupt s

Dreport: Add SoftIRQ Information Collection

Add functionality to collect softIRQ statistics as part of the debug
data collection process. The new file will contain:

- softIRQs: Software interrupt statistics including counts and
processing details

Including this information in debug reports will enhance
troubleshooting capabilities for system performance and resource
utilization in OpenBMC based systems. It provides a snapshot of
software interrupt processing activity at the time of report generation.

This addition will help identify potential bottlenecks and excessive
softIRQ activity that may impact system performance or stability,
particularly for network stack processing, timers, and tasklet
execution analysis.

Tested on the qemuarm platform.

'''
Dump size: 82k
Untar Dump Size: 936K
Added File Size: 282 bytes
Time for the Dump Completion: 15sec
Time for the command to run: 0.038s

Data can be used like
Network Analysis (NET_RX/NET_TX)
NET_RX: 170 suggests:
170 packets received via network interfaces during collection
Potential issues if:
Counts increase without traffic
Asymmetry between NET_RX and actual received packets (ifconfig/ethtool)

root@qemuarm:~# busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 1 "i" i 1234

root@qemuarm:~# journalctl -f -u xyz.openbmc_project.Dump.Manager
...
Mar 26 04:09:34 qemuarm phosphor-dump-manager[220]: OriginatorId is not provided
Mar 26 04:09:34 qemuarm phosphor-dump-manager[220]: OriginatorType is not provided. Replacing the string with the default value
Mar 26 04:09:34 qemuarm phosphor-dump-manager[220]: Initiating new BMC dump with type: user path:
...
Mar 26 04:09:49 qemuarm phosphor-dump-manager[304]: Wed Mar 26 04:09:49 UTC 2025 Report is available in /var/lib/phosphor-debug-collector/dumps/1
Mar 26 04:09:49 qemuarm phosphor-dump-manager[304]: Wed Mar 26 04:09:49 UTC 2025 Successfully completed
Mar 26 04:09:49 qemuarm phosphor-dump-manager[220]: User initiated dump completed, resetting flag

root@qemuarm:~# time cat /proc/softirqs
...
real 0m0.038s
user 0m0.021s
sys 0m0.002s
root@qemuarm:~#

ls -lrth obmcdump_1_1742962174.tar.xz
-rw-r--r-- 1 dkamat domain-users 82K Mar 26 10:16 obmcdump_1_1742962174.tar.xz

ls -lrth obmcdump_1_1742962174/
total 936K
-rw-r--r-- 1 dkamat domain-users 223 Mar 26 09:39 summary.log
...
-rw-r--r-- 1 dkamat domain-users 282 Mar 26 09:39 softIRQs.log

cat obmcdump_1_1742962174/softIRQs.log | head
CPU0
HI: 0
TIMER: 4457
NET_TX: 3
NET_RX: 170
BLOCK: 0
IRQ_POLL: 0
TASKLET: 1
SCHED: 0
HRTIMER: 0
'''

Change-Id: I154e9a4ddfad4099ea57d31fb689ac9eefdda8e7
Signed-off-by: Deepak Kamat <dkamat@nvidia.com>

show more ...

73cec52d26-Mar-2025 Deepak Kamat <dkamat@nvidia.com>

Dreport: Add D-Bus Statistics Collection

Add functionality to collect statistical information about
D-Bus usage as part of the debug data collection process.

Including this information in debug rep

Dreport: Add D-Bus Statistics Collection

Add functionality to collect statistical information about
D-Bus usage as part of the debug data collection process.

Including this information in debug reports will enhance
troubleshooting capabilities for D-Bus related issues in
OpenBMC-based systems. It provides a snapshot of D-Bus
activity and performance at the time of report generation.

This addition will help identify potential communication
bottlenecks, unexpected service behaviors, and performance
issues related to inter-process communication, system
management interfaces, and sensor data retrieval.

Tested on qemuarm.

'''
Dump size: 76k
Untar Dump Size: 916K
Added File Size: 79K
Time for the Dump Completion: 15 sec
Time for the command to run: 0.260s

[1] root@qemuarm:~# time dbus-send --system --dest=org.freedesktop.DBus --type=method_call --print-reply /org/freedesktop/DBus org.freedesktop.DBus.Debug.Stats.GetStats
real 0m0.260s
user 0m0.049s
sys 0m0.204s

High OutgoingBytes:
While all connections show 0 in the given data, a connection
with consistently high OutgoingBytes might suggest a blocked
receiver or network issues.

Rapidly Increasing NameObjects:
If a connection's NameObjects count grows quickly over time,
it may indicate a resource leak.

Mismatched IncomingBytes and OutgoingBytes:
Large discrepancies between these values across multiple
connections could suggest communication issues.

High Number of Connections:
An unusually high number of active connections
(the log shows 33) might indicate connection leaks
or denial-of-service attempts.

[2] root@qemuarm:~# busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 1 "i" i 1234

...
[3] Mar 26 11:14:45 qemuarm phosphor-dump-manager[223]: Initiating new BMC dump with type: user path:
...
[4] Mar 26 11:15:00 qemuarm phosphor-dump-manager[305]: Wed Mar 26 11:15:00 UTC 2025 Successfully completed
[5] Mar 26 11:15:00 qemuarm phosphor-dump-manager[223]: User initiated dump completed, resetting flag

ls -lrth obmcdump_1_1742987685
total 916K
...
-rw-r--r-- 1 dkamat domain-users 79K Mar 26 16:44 dbusstats.log
...

ls -lrth obmcdump_1_1742987685/dbusstats.log
domain-users 79K Mar 26 16:44 obmcdump_1_1742987685/dbusstats.log
cat obmcdump_1_1742987685/dbusstats.log | -n 10
...
array [
dict entry(
string "NameObjects"
uint32 0
)
dict entry(
string "MatchBytes"
uint32 6150
)
dict entry(
string "Matches"
uint32 8
)
dict entry(
string "ReplyObjects"
uint32 0
)
dict entry(
string "IncomingBytes"
uint32 16
)
dict entry(
string "IncomingFds"
uint32 0
)
dict entry(
string "OutgoingBytes"
uint32 0
)
dict entry(
string "OutgoingFds"
uint32 0
)
dict entry(
string "ActivationRequestBytes"
uint32
)
dict entry(
string "ActivationRequestFds"
uint32 0
)
]
}
'''

Change-Id: I37d93f1a6a55c306cd3a05e7319c99413353aa98
Signed-off-by: Deepak Kamat <dkamat@nvidia.com>

show more ...

218bf91127-Mar-2025 Matt Spinler <spinler@us.ibm.com>

Fix typo in dreport README

BMC dump type 3 is an elog dump.

Change-Id: I06de1df944e0bc899eb03c33da3a09454a71c572
Signed-off-by: Matt Spinler <spinler@us.ibm.com>

94bc05fc11-Jun-2024 Gopichand Paturi <gopichandpaturi@gmail.com>

dreport: Remove IBM and OpenPower plugin dump scripts

IBM and OpenPower plugins are being moved to openpower-debug-collector
repository. So these scripts can be removed from here.

Recipe changes to

dreport: Remove IBM and OpenPower plugin dump scripts

IBM and OpenPower plugins are being moved to openpower-debug-collector
repository. So these scripts can be removed from here.

Recipe changes to remove installation of these scripts from this
repository.https://gerrit.openbmc.org/c/openbmc/openbmc/+/71687/

Tested:
Verified that scripts are getting installed correctly from
openpower-debug-collector instead of this repo.

Change-Id: Ie9b2bbfc6ec94aa27f49d635be40ec41ecf95763
Signed-off-by: Gopichand Paturi <gopichandpaturi@gmail.com>

show more ...


4e0251d114-Oct-2022 Zami Seck <zimzam17@gmail.com>

dreport: Add audit.log Data to Dump

Add all /var/log/audit/audit.log files to BMC dumps. This
file contains a log of the events that occurred and who initiated
them.

Tested:
```
BMCDUMP$ ls -la aud

dreport: Add audit.log Data to Dump

Add all /var/log/audit/audit.log files to BMC dumps. This
file contains a log of the events that occurred and who initiated
them.

Tested:
```
BMCDUMP$ ls -la audit-log.log
-rw-r--r-- 1 xxxx xxxx 3993 Sep 19 10:59 audit-log.log

$ tar -tvf $DUMPFILE | grep audit

drwx------ root/root 0 2023-03-22 14:07 BMCDUMP.SIMP10R.00000000.20230322190714/audit/

-rw------- root/root 1729455 2023-03-22 14:07 BMCDUMP.SIMP10R.00000000.20230322190714/audit/audit.log

-r-------- root/root 2097279 2023-03-22 14:07 BMCDUMP.SIMP10R.00000000.20230322190714/audit/audit.log.3

-r-------- root/root 2097160 2023-03-22 14:07 BMCDUMP.SIMP10R.00000000.20230322190714/audit/audit.log.2

-r-------- root/root 2097227 2023-03-22 14:07 BMCDUMP.SIMP10R.00000000.20230322190714/audit/audit.log.1
```

Change-Id: I8e36edeca9ad40f8ddc02becf3a9246e0989d72a
Signed-off-by: Janet Adkins <janeta@us.ibm.com>
Signed-off-by: Gopichand Paturi <gopichandpaturi@gmail.com>

show more ...

07aa6b6c25-Mar-2025 Deepak Kamat <dkamat@nvidia.com>

Dreport: Add Kernel Command Line Info

Add functionality to collect kernel command line
information as part of the debug data collection
process. The new plugin retrieves data from
/proc/cmdline, whi

Dreport: Add Kernel Command Line Info

Add functionality to collect kernel command line
information as part of the debug data collection
process. The new plugin retrieves data from
/proc/cmdline, which contains the kernel parameters
passed during boot.

Including this information in debug reports will
enhance troubleshooting capabilities for system
boot and configuration issues in OpenBMC-based
systems. It provides a snapshot of the kernel's
runtime parameters, which can help identify
misconfigurations or diagnose boot-related
problems.

Tested on qemuarm platform.

'''
Kernel cmdline: console=ttyAMA0 root=/dev/vda rw
Enables serial console debugging
Specifies root filesystem location
Mounts root in read-write mode

[1] busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 1 "i" i 1234

tar -xvf obmcdump_1_1742903558.tar.xz
obmcdump_1_1742903558/
obmcdump_1_1742903558/summary.log
...
obmcdump_1_1742903558/kernalcmdline.log
...

cat obmcdump_1_1742903558/kernalcmdline.log | head
console=ttyAMA0 root=/dev/vda rw
'''

Change-Id: I71177a2d3ff7b9b80ce11eb22ef01434c6ecd686
Signed-off-by: Deepak Kamat <dkamat@nvidia.com>

show more ...

a3e6a48c19-Mar-2025 Deepak Kamat <dkamat@nvidia.com>

Dreport: Add Mount Information File Collection

Add functionality to collect system mount information as part of the
debug data collection process. The mount info file contains details
about all moun

Dreport: Add Mount Information File Collection

Add functionality to collect system mount information as part of the
debug data collection process. The mount info file contains details
about all mounted filesystems including mount points, filesystem
types, and mount options.

Including mount information in debug reports will help with
troubleshooting filesystem and storage related issues in OpenBMC
based systems by providing a snapshot of the system's mount
configuration at the time of report generation.

Tested on the qemuarm platform.

'''
busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 1 "i" i 1234

root@qemuarm:~# journalctl -f -u xyz.openbmc_project.Dump.Manager.service
...
Mar 20 07:22:10 qemuarm phosphor-dump-manager[367]: Thu Mar 20 07:22:10 UTC 2025 Report is available in /var/lib/phosphor-debug-collector/dumps/1
Mar 20 07:22:10 qemuarm phosphor-dump-manager[367]: Thu Mar 20 07:22:10 UTC 2025 Successfully completed
Mar 20 07:22:10 qemuarm phosphor-dump-manager[223]: User initiated dump completed, resetting flag

root@qemuarm:~# ls /var/lib/phosphor-debug-collector/dumps/1/obmcdump_1_1742479997.tar.xz
/var/lib/phosphor-debug-collector/dumps/1/obmcdump_1_1742479997.tar.xz

tar -xvf obmcdump_1_1742479997.tar.xz
obmcdump_1_1742479997/
obmcdump_1_1742479997/summary.log
...
obmcdump_1_1742479997/mountinfo.log
...

cat obmcdump_1_1742479997/mountinfo.log
/dev/vda on / type ext4 (rw,relatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=118004k,nr_inodes=29501,mode=755)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=666)
tmpfs on /run type tmpfs (rw,nosuid,nodev,size=47612k,nr_inodes=819200,mode=755)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,size=119032k,nr_inodes=1048576)
tmpfs on /run/credentials/systemd-journald.service type tmpfs (ro,nosuid,nodev,noexec,relatime,nosymfollow,size=1024k,nr_inodes=1024,mode=700,noswap)
tmpfs on /run/credentials/systemd-resolved.service type tmpfs (ro,nosuid,nodev,noexec,relatime,nosymfollow,size=1024k,nr_inodes=1024,mode=700,noswap)
tmpfs on /var/volatile type tmpfs (rw,relatime)
tmpfs on /run/credentials/systemd-networkd.service type tmpfs (ro,nosuid,nodev,noexec,relatime,nosymfollow,size=1024k,nr_inodes=1024,mode=700,noswap)
tracefs on /sys/kernel/debug/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run/credentials/getty@tty1.service type tmpfs (ro,nosuid,nodev,noexec,relatime,nosymfollow,size=1024k,nr_inodes=1024,mode=700,noswap)
'''

Change-Id: I4e8fc3c8ba5a8ec40ec91256e0a2e7390e915be9
Signed-off-by: Deepak Kamat <dkamat@nvidia.com>

show more ...

41167a2a10-Dec-2024 Jian Zhang <zhangjian.3032@bytedance.com>

dreport: collecting all namespace journal logs

For BMCs that support multiple namespaces to manage logs, add the
--namespace=* option to the journalctl command to collect all logs.

refer to systemd

dreport: collecting all namespace journal logs

For BMCs that support multiple namespaces to manage logs, add the
--namespace=* option to the journalctl command to collect all logs.

refer to systemd-journald.service.html[0].

Tested:
1. Prepare a namespace configuration, to isolate logs (in general for
the third-party code, like silicon vendor, etc), avoid too many
unexpected to noise the system.
```
~# cp /etc/systemd/journald.conf /etc/systemd/journald@intel.conf
~# mkdir -p /etc/systemd/system/com.intel.crashdump.service.d
~# echo "[Service]" > /etc/systemd/system/com.intel.crashdump.service.d/override.conf
~# echo "LogNamespace=intel" >> /etc/systemd/system/com.intel.crashdump.service.d/override.conf
~# reboot # or restart systemd-journald, and daemon-reload
````

2. using journalctl vs journalctl --namespace=*
```
~# journalctl -u com.intel.crashdump.service
Dec 10 16:56:49 xxx systemd[1]: Starting Intel BMC CPU Crashdump...
Dec 10 16:56:55 xxx systemd[1]: Started Intel BMC CPU Crashdump.
```

```
~# journalctl --namespace=*
Dec 10 16:56:49 xxx systemd[1]: Starting Intel BMC CPU Crashdump...
Dec 10 16:56:55 xxx systemd[1]: Started Intel BMC CPU Crashdump.
Dec 10 16:56:57 xxx crashdump[258]: Crashdump version: ....
Dec 10 16:56:57 xxx crashdump[258]: Initializing crashdump...
....
```

3. After this change, check the journal logs, and the journal logs
should be collect the logs from all namespaces.
```
cat journal-pretty.log| ag "Initializing crashdump"
"MESSAGE" : "Initializing crashdump...",
```

[0]: https://www.freedesktop.org/software/systemd/man/latest/systemd-journald.service.html#Journal%20Namespaces

Change-Id: I70f33eb6119cbe041bb0dc2aac527e02d8f5e757
Signed-off-by: Jian Zhang <zhangjian.3032@bytedance.com>

show more ...

d56bab5508-Aug-2024 Jian Zhang <zhangjian.3032@bytedance.com>

dreport: fix procfd missing

During the execution of 'ls -Al /proc/*/fd/ 2> /dev/null', some
processes may stop, like `while true; do echo "Hello" > /dev/null; done`

Causing the ls cmd to fail, and

dreport: fix procfd missing

During the execution of 'ls -Al /proc/*/fd/ 2> /dev/null', some
processes may stop, like `while true; do echo "Hello" > /dev/null; done`

Causing the ls cmd to fail, and as a result, the procfs.log will not be
collected in the dump log.

So ensure ls procfd returns success.

Tested:
1. Run `while true; do echo "Hello" > /dev/null; done` in the
background.

2. Run `set -e; while true; do ls -Al /proc/*/fd/ 2> /dev/null
|| true; done`, the command will not stop
(before the fix, the command will stop quickly).

Change-Id: I1f4e8fda000f303fd579825e0a94efdba5a097eb
Signed-off-by: Jian Zhang <zhangjian.3032@bytedance.com>

show more ...


/openbmc/phosphor-debug-collector/.clang-format
/openbmc/phosphor-debug-collector/.clang-tidy
/openbmc/phosphor-debug-collector/dump-extensions/default/meson.build
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/dump-extensions.cpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/dump_manager_resource.cpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/dump_manager_resource.hpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/dump_manager_system.cpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/dump_manager_system.hpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/meson.build
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/op_dump_consts.hpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/resource_dump_entry.hpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/system_dump_entry.hpp
/openbmc/phosphor-debug-collector/dump_manager_bmc.cpp
/openbmc/phosphor-debug-collector/dump_manager_bmc.hpp
/openbmc/phosphor-debug-collector/dump_manager_faultlog.cpp
/openbmc/phosphor-debug-collector/dump_manager_faultlog.hpp
/openbmc/phosphor-debug-collector/dump_types.cpp.mako
/openbmc/phosphor-debug-collector/dump_types.hpp.mako
/openbmc/phosphor-debug-collector/dump_utils.cpp
/openbmc/phosphor-debug-collector/dump_utils.hpp
/openbmc/phosphor-debug-collector/host-transport-extensions/default/meson.build
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/common/pldm_utils.cpp
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/common/pldm_utils.hpp
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/default/meson.build
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/default/pldm_interface.cpp
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/meson.build
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/oem/ibm/meson.build
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/oem/ibm/pldm_oem_cmds.cpp
/openbmc/phosphor-debug-collector/host_transport_exts.hpp
/openbmc/phosphor-debug-collector/meson.build
/openbmc/phosphor-debug-collector/meson.options
/openbmc/phosphor-debug-collector/ramoops_manager.cpp
/openbmc/phosphor-debug-collector/ramoops_manager.hpp
/openbmc/phosphor-debug-collector/ramoops_manager_main.cpp
/openbmc/phosphor-debug-collector/test/debug_inif_test.cpp
/openbmc/phosphor-debug-collector/test/meson.build
dreport.d/plugins.d/procfd
971d1a7417-Dec-2024 Matt Fischer <matthew.fischer@hpe.com>

Fix some things in dreport

The version command for dreport doesn't do anything
and so this commit removes it.

Additionally I was having trouble with --quiet and
--verbose. After enough squinting on

Fix some things in dreport

The version command for dreport doesn't do anything
and so this commit removes it.

Additionally I was having trouble with --quiet and
--verbose. After enough squinting one can see that
a different dash character was being used in the
original code, likely these never worked.

Fixes openbmc/phosphor-debug-collector#18

Change-Id: I86eb58e848790122f2c23841de3c39e18acd7d0b
Signed-off-by: Matt Fischer <matthew.fischer@hpe.com>

show more ...


/openbmc/phosphor-debug-collector/.clang-format
/openbmc/phosphor-debug-collector/.clang-tidy
/openbmc/phosphor-debug-collector/bmc_dump_entry.cpp
/openbmc/phosphor-debug-collector/bmc_dump_entry.hpp
/openbmc/phosphor-debug-collector/core_manager.hpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/dump_manager_system.cpp
/openbmc/phosphor-debug-collector/dump-extensions/openpower-dumps/op_dump_util.cpp
/openbmc/phosphor-debug-collector/dump_entry.cpp
/openbmc/phosphor-debug-collector/dump_entry.hpp
/openbmc/phosphor-debug-collector/dump_manager.hpp
/openbmc/phosphor-debug-collector/dump_manager_bmc.cpp
/openbmc/phosphor-debug-collector/dump_manager_bmc.hpp
/openbmc/phosphor-debug-collector/dump_manager_faultlog.cpp
/openbmc/phosphor-debug-collector/dump_manager_faultlog.hpp
/openbmc/phosphor-debug-collector/dump_offload.cpp
/openbmc/phosphor-debug-collector/dump_utils.cpp
/openbmc/phosphor-debug-collector/dump_utils.hpp
/openbmc/phosphor-debug-collector/elog_watch.cpp
/openbmc/phosphor-debug-collector/elog_watch.hpp
/openbmc/phosphor-debug-collector/faultlog_dump_entry.hpp
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/common/pldm_utils.cpp
/openbmc/phosphor-debug-collector/host-transport-extensions/pldm/oem/ibm/pldm_oem_cmds.cpp
/openbmc/phosphor-debug-collector/meson.build
/openbmc/phosphor-debug-collector/subprojects/nlohmann_json.wrap
/openbmc/phosphor-debug-collector/test/debug_inif_test.cpp
dreport.d/dreport
/openbmc/phosphor-debug-collector/watch.cpp
/openbmc/phosphor-debug-collector/watch.hpp

123456