Remove internal dump create interface

The createDump method was revised to support key-value
parameters, allowing flexible dump type specification.
This change negates the need for the internal create
interface, exclusive to the phosphor-debug-collector
repository.

This commit removes all instances of the internal create
method, replacing them with the updated createDump method.
The modified createDump approach ensures a consistent dump
initiation procedure and enables all applications to
request various dump types.

Tests:
- Validate the creation of a user-requested BMC dump.
- Validate the creation of a dump due to an InternalFailure.
- Generate a core dump to validate the corresponding BMC dump creation.
- Ensure that system-generated dumps are allowed when user-requested
  dump is in progress.
- Ensure simultaneous user requested dumps are prevented

Change-Id: I9f91375788201e2badf51d87f8117154a8e1ed8a
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
9 files changed
tree: 8a23a076d23fc49b0518b7befc9290ab04062e36
  1. .vscode/
  2. dump-extensions/
  3. host-transport-extensions/
  4. subprojects/
  5. test/
  6. tools/
  7. .clang-format
  8. .gitignore
  9. .shellcheck-ignore
  10. bmc_dump_entry.cpp
  11. bmc_dump_entry.hpp
  12. core_manager.cpp
  13. core_manager.hpp
  14. core_manager_main.cpp
  15. dump-extensions.hpp
  16. dump_entry.cpp
  17. dump_entry.hpp
  18. dump_manager.cpp
  19. dump_manager.hpp
  20. dump_manager_bmc.cpp
  21. dump_manager_bmc.hpp
  22. dump_manager_faultlog.cpp
  23. dump_manager_faultlog.hpp
  24. dump_manager_main.cpp
  25. dump_offload.cpp
  26. dump_offload.hpp
  27. dump_serialize.cpp
  28. dump_serialize.hpp
  29. dump_types.cpp
  30. dump_types.hpp
  31. dump_utils.cpp
  32. dump_utils.hpp
  33. elog_watch.cpp
  34. elog_watch.hpp
  35. errors_map.hpp
  36. errors_map.mako.cpp
  37. errors_map_gen.py
  38. example_errors_watch.yaml
  39. faultlog_dump_entry.cpp
  40. faultlog_dump_entry.hpp
  41. ffdc
  42. host_transport_exts.hpp
  43. LICENSE
  44. meson.build
  45. meson_options.txt
  46. OWNERS
  47. ramoops_manager.cpp
  48. ramoops_manager.hpp
  49. ramoops_manager_main.cpp
  50. README.md
  51. watch.cpp
  52. watch.hpp
README.md

phosphor-debug-collector

Phosphor Debug Collector provides mechanisms to collect various log files and system parameters. Used to troubleshoot problems in OpenBMC based systems.

One such mechanism is dreport, a script that collects debug data and packages it into an archive file.

To Build

To build this package with meson, do the following steps:

    1. meson builddir
    2. ninja -C builddir

To clean the built files run ninja -C builddir clean.

To run unit tests

Tests can be run in the CI docker container, refer local-ci-build

or with an OpenBMC x86 sdk(see below for x86 steps).

meson -Dtests=enabled build
ninja -C build test