tree 7a14d053117c8e33df459bf6df00dda632d06661
parent 218bf9119e45f2a46601e709af39d5b338ee944e
author Deepak Kamat <dkamat@nvidia.com> 1742992477 +0530
committer Deepak Kamat <dkamat@nvidia.com> 1746174035 +0000

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>
