History log of /openbmc/bmcweb/redfish-core/lib/manager_logservices_journal.hpp (Results 1 – 13 of 13)
Revision Date Author Comments
# d7857201 28-Jan-2025 Ed Tanous <etanous@nvidia.com>

Fix includes

Clang-tidy misc-include-cleaner appears to now be enforcing
significantly more headers than previously. That is overall a good
thing, but forces us to fix some issues. This commit is

Fix includes

Clang-tidy misc-include-cleaner appears to now be enforcing
significantly more headers than previously. That is overall a good
thing, but forces us to fix some issues. This commit is largely just
taking the clang-recommended fixes and checking them in. Subsequent
patches will fix the more unique issues.

Note, that a number of new ignores are added into the .clang-tidy file.
These can be cleaned up over time as they're understood. The majority
are places where boost includes a impl/x.hpp and x.hpp, but expects you
to use the later. include-cleaner opts for the impl, but it isn't clear
why.

Change-Id: Id3fdd7ee6df6c33b2fd35626898523048dd51bfb
Signed-off-by: Ed Tanous <etanous@nvidia.com>
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>

show more ...


# 40e9b92e 10-Sep-2024 Ed Tanous <etanous@nvidia.com>

Use SPDX identifiers

SPDX identifiers are simpler, and reduce the amount of cruft we have in
code files. They are recommended by linux foundation, and therefore we
should do as they allow.

This pa

Use SPDX identifiers

SPDX identifiers are simpler, and reduce the amount of cruft we have in
code files. They are recommended by linux foundation, and therefore we
should do as they allow.

This patchset does not intend to modify any intent on any existing
copyrights or licenses, only to standardize their inclusion.

[1] https://www.linuxfoundation.org/blog/blog/copyright-notices-in-open-source-software-projects

Change-Id: I935c7c0156caa78fc368c929cebd0f068031e830
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 60e995cd 09-Dec-2024 Ed Tanous <etanous@nvidia.com>

Break out journal utils

A number of the journald utilities are distinct from Redfish, and could
be reused. Functions moved are copy/paste with no modifications.

Tested:
Journald LogService GET sti

Break out journal utils

A number of the journald utilities are distinct from Redfish, and could
be reused. Functions moved are copy/paste with no modifications.

Tested:
Journald LogService GET still functions correctly
Redfish service validator fails no new checks.

Change-Id: Icf1c28152e14f3e0c1c5203aac50c40d56bb272e
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# f1137a9d 06-Jan-2025 Ed Tanous <etanous@nvidia.com>

Remove base from journal calls

Base from the journal helper function. This is only ever used for
base10, and is only used in one spot. There's no need need to have this
as an argument. Just use d

Remove base from journal calls

Base from the journal helper function. This is only ever used for
base10, and is only used in one spot. There's no need need to have this
as an argument. Just use defaults.

Tested: Redfish service validator passes.
Journal entries at /redfish/v1/Managers/LogService/Journal/Entries
look correct

Change-Id: I427ddde1c1fc89cb8116fd9cb30b8fd799ba58b5
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 7da633f0 02-Dec-2024 Ed Tanous <etanous@nvidia.com>

Clang-tidy updates for 19

Update to add new checks that are now available to us. Fix the minor
issues we have. A few of our checks that we previously had enabled have
been renamed, so remove those

Clang-tidy updates for 19

Update to add new checks that are now available to us. Fix the minor
issues we have. A few of our checks that we previously had enabled have
been renamed, so remove those from the file as well.

Change-Id: Idbbfc3cb7ba42ac780e557554d7ae8ab190e7551
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 8274eb11 18-Nov-2024 Ed Tanous <etanous@nvidia.com>

Simplify journal paging

sd-journal has its own paging mechanisms for generating and seeking to
unique ids. Ironically they look fairly similar to what we've
implemented here, but they have more con

Simplify journal paging

sd-journal has its own paging mechanisms for generating and seeking to
unique ids. Ironically they look fairly similar to what we've
implemented here, but they have more content, presumably because they
can use internal implementation details to do paging.

This commit switches all sd-journal paging to use cursors. Functionally
this changes the odata.id from being a concatenated string into being a
base64 encoded identifier that is much longer.

The end result is vastly simplified code.

Tested:
check journal script [1] succeeds

[1] https://github.com/openbmc/openbmc-tools/blob/master/check_journal/check_journal

Script runs to completion and shows all tests passed.

Change-Id: Ia49fbfc272bef6dfbe1ea45a8d993dc785041659
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 058f54ed 03-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

meson: switch code dependency to libsystemd

For a while now systemd has packaged a separate `libsystemd`. For
meson dependency, `systemd` should be used when looking for systemd
service file paths

meson: switch code dependency to libsystemd

For a while now systemd has packaged a separate `libsystemd`. For
meson dependency, `systemd` should be used when looking for systemd
service file paths and `libsystemd` should be used for `sd_*` functions.

Update the dependency accordingly.

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

show more ...


# bd79bce8 16-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

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

show more ...


# b0a7b571 06-Aug-2024 Ed Tanous <etanous@nvidia.com>

Remove unused code

This line was added in 055713e4b201b049cd6a2d9ca58b89dbf916759f but
clang-18 correctly notes that it is unused. Remove it.

Tested: Code compiles.

Change-Id: I4fc836e4de4c29a22b

Remove unused code

This line was added in 055713e4b201b049cd6a2d9ca58b89dbf916759f but
clang-18 correctly notes that it is unused. Remove it.

Tested: Code compiles.

Change-Id: I4fc836e4de4c29a22b26fad048309efa297d3412
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 539d8c6b 19-Jun-2024 Ed Tanous <ed@tanous.net>

Consistently use generated enumerations

This commit causes all of Redfish to use generated enum values for enum
types. Using generated code prevents problems, and makes it more clear
what types are

Consistently use generated enumerations

This commit causes all of Redfish to use generated enum values for enum
types. Using generated code prevents problems, and makes it more clear
what types are allowed.

Doing this found two places where we had structs that didn't fulfill the
schema. They have been commented, but will be fixed with a breaking
change at some point in the future.

Tested: WIP

Change-Id: I5fdd2f2dfb6ec05606a522e1f4e331f982c8e476
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# 055713e4 17-Jul-2024 Ed Tanous <etanous@nvidia.com>

Make journal log efficient

Journal logging currently loops over all entries to find even a single
entry. This was reasonable at the time when bmc couldn't really store a
lot, but now that BMCs are

Make journal log efficient

Journal logging currently loops over all entries to find even a single
entry. This was reasonable at the time when bmc couldn't really store a
lot, but now that BMCs are getting significantly more flash storage,
this simplification is insufficient. In an example system with an
AST2600, this API takes 32 seconds to respond. This is mediocre for
obvious reasons.

This commit updates to use the sd_journal APIs to let journald do the
skipping, which can use internal details and can be a lot more
efficient. To get the total size, bmcweb still needs to pull the
sequenceids of HEAD and TAIL to determine the complete size, but this is
still reasonable.

Tested:
Redfish service validator passes.

Various versions of top and skip return the correct result, pulling
various top sizes from 0, omitted to the limit.

https://gerrit.openbmc.org/c/openbmc/openbmc-tools/+/72975

To test all corner cases.

Change-Id: I0456bca4e037529f70eaee0bdd9191e9d5839226
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# 84177a2f 17-Jul-2024 Ed Tanous <etanous@nvidia.com>

Break journal logging into methods

Like we've done other places, make log services journal follow the
naming convention, and break down lambdas into actual methods.

This is a refactor not intended

Break journal logging into methods

Like we've done other places, make log services journal follow the
naming convention, and break down lambdas into actual methods.

This is a refactor not intended to make any functional changes.

Tested: Redfish service validator passes. Journal works as before.

Change-Id: Ibbc7a13fba9c63606f7fd9c741af3b296633b664
Signed-off-by: Ed Tanous <etanous@nvidia.com>

show more ...


# b0983db2 17-Jul-2024 Ed Tanous <etanous@nvidia.com>

Break out Journal log into its own file

log_services.hpp probably shouldn't have been allowed to get as large
as it has. This commit starts by breaking out functions from
log_services.hpp, and move

Break out Journal log into its own file

log_services.hpp probably shouldn't have been allowed to get as large
as it has. This commit starts by breaking out functions from
log_services.hpp, and moves them to manager_logservices_journal.hpp.
Code is moved as-is with no functional changes.

Tested: Journal GET works as before. Redfish service validator passes.

Change-Id: I93c372ae3e39967e1b0eaf0cf496f84ac4114b5c
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...