Revision Date Author Comments
# d1f670fe 05-Jun-2023 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

Implementing Phosphor-Logging/LG2 logging

This commit introduces changes in the phosphor-debug-collector
repository to implement structured logging using the LG2
framework. The existing log calls in

Implementing Phosphor-Logging/LG2 logging

This commit introduces changes in the phosphor-debug-collector
repository to implement structured logging using the LG2
framework. The existing log calls in the repository,
have been replaced with LG2 logging, facilitates better
log tracking and troubleshooting by offering improved
detail in JSON object values.

Test:
- Created BMC dump
- Created system dump

Here is a example
{
"_EXE" : "/tmp/phosphor-dump-manager",
"_MACHINE_ID" : "f9ca96d99c7b4ba688556f632ffeff5d",
"_CAP_EFFECTIVE" : "1ffffffffff",
"LOG2_FMTMSG" : "Invalid Dump file name, FILENAME: {FILENAME}",
"__CURSOR" : "s=721ae7a5b6ed43ec904f2bb03e3c0403;i=2a8d0;\
b=b372b9a5989e46bb8e62b33310e181ea;m=2c05fda2b;t=5fdf0684c1e70;x=1592f60584d6486c",
"CODE_FUNC" : "void phosphor::dump::bmc::Manager::\
createEntry(const std::filesystem::__cxx11::path&)",
"_SYSTEMD_SLICE" : "system-dropbear.slice",
"CODE_LINE" : "174",
"__REALTIME_TIMESTAMP" : "1686583867350640",
"PRIORITY" : "3",
"_SYSTEMD_UNIT" : "dropbear@1-9.3.29.238:22-9.3.84.138:45432.service",
"_PID" : "16209",
"_BOOT_ID" : "b372b9a5989e46bb8e62b33310e181ea",
"_SOURCE_REALTIME_TIMESTAMP" : "1686583867350580",
"_TRANSPORT" : "journal",
"_HOSTNAME" : "openbmc",
"SYSLOG_IDENTIFIER" : "phosphor-dump-manager",
"MESSAGE" : "Invalid Dump file name, \
FILENAME: BMCDUMP.XXXXXXX.0000006.20230612153010",
"CODE_FILE" : \
"/usr/src/debug/phosphor-debug-collector/1.0+gitAUTOINC+a17f1c92ce-r1\
/dump_manager_bmc.cpp",
"_UID" : "0",
"_CMDLINE" : "/tmp/phosphor-dump-manager",
"_RUNTIME_SCOPE" : "system",
"FILENAME" : "BMCDUMP.XXXXXXXX.0000006.20230612153010",
"_SYSTEMD_INVOCATION_ID" : "64a11629aade4c96ab62154cbc4be8b7",
"__MONOTONIC_TIMESTAMP" : "11817441835",
"_SYSTEMD_CGROUP" : "/system.slice/system-dropbear.slice/\
dropbear@1-9.3.29.238:22-9.3.84.138:45432.service",
"_COMM" : "phosphor-dump-m",
"_GID" : "0"
}

Change-Id: I3a52b812b059b64d945493de2e2cc68a43f6d72a
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

show more ...


# 78e88402 10-May-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

Change-Id: If4790d4928efc3e6690ca090aa79f0c7737c3683
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 74a1f39c 27-Oct-2021 Asmitha Karunanithi <asmitk01@in.ibm.com>

Implement OriginatedBy interface in dump entry dbus obj

This new interface "OriginatedBy" will be implemented
by all the dump entry dbus objects. It contains a property
"OriginatorId" which stores t

Implement OriginatedBy interface in dump entry dbus obj

This new interface "OriginatedBy" will be implemented
by all the dump entry dbus objects. It contains a property
"OriginatorId" which stores the unique id of the user that
has initiated the dump. The unique id in this case is a string
that contains the ip address of the client that initiated
the dump.

The dbus interface change for the same is at:
[1] https://gerrit.openbmc-project.xyz/c/openbmc/phosphor-dbus-interfaces/+/47057

Tested By:

[1] busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 2 "xyz.openbmc_project.Dump.Create.CreateParameters.OriginatorId" s "<unique-id>" "xyz.openbmc_project.Dump.Create.CreateParameters.OriginatorType" s "xyz.openbmc_project.Common.OriginatedBy.OriginatorTypes.Client" o "/xyz/openbmc_project/dump/bmc/entry/2"

[2] busctl --verbose call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/resource xyz.openbmc_project.Dump.Create CreateDump a{sv} 4 "com.ibm.Dump.Create.CreateParameters.VSPString" s "vsp" "com.ibm.Dump.Create.CreateParameters.Password" s "password" "com.ibm.Dump.Create.CreateParameters.OriginatorId" s "<unique-id>" "xyz.openbmc_project.Dump.Create.CreateParameters.OriginatorType" s "xyz.openbmc_project.Common.OriginatedBy.OriginatorTypes.Client"
MESSAGE "o" {
OBJECT_PATH "/xyz/openbmc_project/dump/resource/entry/1";
};

[3] busctl call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/system xyz.openbmc_project.Dump.Create CreateDump a{sv} 2 "com.ibm.Dump.Create.CreateParameters.OriginatorId" s "<unique-id>" "xyz.openbmc_project.Dump.Create.CreateParameters.OriginatorType" s "xyz.openbmc_project.Common.OriginatedBy.OriginatorTypes.Client" o "/xyz/openbmc_project/dump/system/entry/1"

Signed-off-by: Asmitha Karunanithi <asmitk01@in.ibm.com>
Change-Id: I23c9f769fd39cd84e042d6effbb3d71c7af4e889

show more ...


# c0ab9d43 18-Aug-2022 Claire Weinan <cweinan@google.com>

Populate timestamps with microsecond precision

xyz.openbmc_project.Time.EpochTime is defined as time elapsed since the
epoch in microseconds.

xyz.openbmc_project.Common.Progress.StartTime and
xyz.o

Populate timestamps with microsecond precision

xyz.openbmc_project.Time.EpochTime is defined as time elapsed since the
epoch in microseconds.

xyz.openbmc_project.Common.Progress.StartTime and
xyz.openbmc_project.Common.Progress.CompletedTime are similarly
defined as microseconds.

Change timestamps that are currently captured in seconds to
microseconds.

Tested:

Check xyz.openbmc_project.Time.EpochTime,
xyz.openbmc_project.Common.Progress.StartTime, and
xyz.openbmc_project.Common.Progress.CompletedTime timestamps of dump
entries.

Example:
busctl introspect xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc/entry/1

Signed-off-by: Claire Weinan <cweinan@google.com>
Change-Id: I6ea220af07f06ad79de0b62b24ce6cd5ba5fd33d

show more ...


# a5097b9e 08-Mar-2022 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

OpenPOWER: Password is not mandatory for resource dump

In dump manager password is always expected for creating
resource dump, which is not needed. So removing the
restriction and making password an

OpenPOWER: Password is not mandatory for resource dump

In dump manager password is always expected for creating
resource dump, which is not needed. So removing the
restriction and making password an optional argument.

Tests:
Request resource dump with providing password.
Tested resource dump without giving password.

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: I46863409e9eb4b16727a78c904853d1408e4462a

show more ...


# 583ebc09 01-Feb-2022 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

OpenPOWER: Ignore already reported resource dump

There are cases when host is reporting already reported
resource dump entries. This commit add fix for duplicate
dump entries.

Test:
Create multiple

OpenPOWER: Ignore already reported resource dump

There are cases when host is reporting already reported
resource dump entries. This commit add fix for duplicate
dump entries.

Test:
Create multiple resource dumps in host
Only one will be reported on BMC
Delete it
While deleting, next entry may get reported multiple times
With this fix that duplicate is eliminated
Feb 01 03:51:00 z2437cbmc phosphor-dump-manager[6244]: Resouce Dump Notify: Id(1174405122) Size(3952)
Feb 01 03:51:00 z2437cbmc phosphor-dump-manager[6244]: Resouce Dump Notify: Updating dumpId(5) Id(1174405122) Size(3952)
Feb 01 03:51:00 z2437cbmc phosphor-dump-manager[6244]: Resouce Dump Notify: Id(1174405122) Size(3952)
Feb 01 03:51:00 z2437cbmc phosphor-dump-manager[6244]: Resource dump entry with source dump id(1174405122) is already present with entry id(5)

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: I86afb6d6916f80ee2412a3e7313aa52b87d30aa7

show more ...


# ad50d422 18-Jan-2022 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

OpenPOWER: Fix for host dump delete

If the dump is not created by host or the request is not
complete the dump id provided by the host will not be
valid. When deleting such dump entries a request fo

OpenPOWER: Fix for host dump delete

If the dump is not created by host or the request is not
complete the dump id provided by the host will not be
valid. When deleting such dump entries a request for
delete should not be send to the host.

Tests:

Deleting a dump which is not finished when host is running

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: If7e8b7fad67c215f057152bb64b5232f198fee9e

show more ...


# ddc3366e 19-Jul-2021 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

Update dump create parameters

Dump create parameters are a set of parameters accepted
in dict format while creating the dump. So far the values
can be only strings but now unit64 als

Update dump create parameters

Dump create parameters are a set of parameters accepted
in dict format while creating the dump. So far the values
can be only strings but now unit64 also added. This commit
address the changes to handle the updated dictionary

Testing:
- Full build with interface change is successful
- Created dumps with new interface
Resource Dump:
busctl --verbose call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/resource xyz.openbmc_project.Dump.Create CreateDump a{sv} 2 "com.ibm.Dump.Create.CreateParameters.VSPString" s "vsp" "com.ibm.Dump.Create.CreateParameters.Password" s "0"
MESSAGE "o" {
OBJECT_PATH "/xyz/openbmc_project/dump/resource/entry/1";
};

BMC Dump:
busctl --verbose call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/bmc xyz.openbmc_project.Dump.Create CreateDump a{sv} 0
MESSAGE "o" {
OBJECT_PATH "/xyz/openbmc_project/dump/bmc/entry/92";
};

System Dump:
busctl --verbose call xyz.openbmc_project.Dump.Manager /xyz/openbmc_project/dump/system xyz.openbmc_project.Dump.Create CreateDump a{sv} 0
MESSAGE "o" {
OBJECT_PATH "/xyz/openbmc_project/dump/system/entry/1";
};

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: I37ab7d870954e1b52500f5975735286433fbb8df

show more ...


# 363af249 16-Jul-2021 George Liu <liuxiwei@inspur.com>

Fix wrong fmt::format strings

If the `openpower-dumps-extension` enabled, found the wrong
fmt::format strings, and CI failed.

Tested: enabled `openpower-dumps-extension` and bui

Fix wrong fmt::format strings

If the `openpower-dumps-extension` enabled, found the wrong
fmt::format strings, and CI failed.

Tested: enabled `openpower-dumps-extension` and built
phosphor-debug-collector successfully.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I9cfc4966658d611b5e9be48a1a5e6e3e3def63f0

show more ...


# 858fbb2e 30-Jun-2021 George Liu <liuxiwei@inspur.com>

Add fmtlib for phosphor-debug-collector

Call fmtlib to get additional information from journal.

Tested: built phosphor-debug-collector successfully
and Unit Test passes.

Add fmtlib for phosphor-debug-collector

Call fmtlib to get additional information from journal.

Tested: built phosphor-debug-collector successfully
and Unit Test passes.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: Ibe65637a0b29b76269fb4bc3f498438901c9306a

show more ...


# 3fc6df48 08-Apr-2021 Jayanth Othayoth <ojayanth@in.ibm.com>

c++17: drop experimental::filesystem

Use the real filesystem library, and drop support for building with
experimental under c++14.

Signed-off-by: Jayanth Othayoth <ojayanth@in.i

c++17: drop experimental::filesystem

Use the real filesystem library, and drop support for building with
experimental under c++14.

Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
Change-Id: I730c0d6dce53b5e0aa0867cddb7f325cdb9b45fc

show more ...


# 341d683d 15-Jan-2021 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

Change the the namespace of OpenPOWER dumps.

Change the namespace of OpenPOWER dumps to openpower
instead of phosphor.

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm

Change the the namespace of OpenPOWER dumps.

Change the namespace of OpenPOWER dumps to openpower
instead of phosphor.

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: I0b99da60cb19f3cf559ce40c971b3ba6f4888238

show more ...


# 62337a92 22-Nov-2020 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

Add Resource dump support

To build use option -Dhost-transport=pldm and
-Dopenpower-dumps-extension=enabled
Add support for resource dump operations like
creation and offloading.

Add Resource dump support

To build use option -Dhost-transport=pldm and
-Dopenpower-dumps-extension=enabled
Add support for resource dump operations like
creation and offloading.
Tests:(Dump manager tests)
Created dump entry.
Faked notify to check whether progress is turning to completed.

Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
Change-Id: Ifeec5670a7806d7ee1b572158b4fff7dc14729a6

show more ...